वैकल्पिक रूप से अंतर्निहित प्रगति पट्टी को मैन्युअल रूप से अपडेट करना संभव है? असल में मेरे पास 2 एमएसआई शामिल हैं और बूटस्ट्रैपर के रूप में इनो सेटअप का उपयोग कर रहे हैं, और उपयोगकर्ता इनपुट के आधार पर एक या दोनों एमएसआई स्थापित किए जाने हैं। मेरे पास CurStepChanged में Exec कथन का उपयोग करके कुछ काम कर रहा है लेकिन यह प्रगति पट्टी को अद्यतन नहीं करता है क्योंकि फ़ाइलों को निकाला जाता है और ऐसा लगता है कि इंस्टॉलर रुक गया है। मुझे लगता है कि अंतिम परिणाम यह है कि मैं कुछ प्रगति बार अपडेट चाहता हूं जबकि फ़ाइलों को अस्थायी फ़ोल्डर में निकाला जाता है।इनो सेटअप में [रन] अनुभाग में निष्पादित होने के लिए सशर्त बयान जोड़ना संभव है?
procedure CurStepChanged(CurStep: TSetupStep);
var
ResultCode: Integer;
begin
if(CurStep = ssInstall) then begin
if(InstallServer) then begin
ExtractTemporaryFile('ServerSetup.msi');
Exec('msiexec',ExpandConstant('/i "{tmp}\ServerSetup.msi" /qb INSTALLDIR="{code:GetInstallPath}\Server\" ALLUSERS=2'),'', SW_SHOW, ewWaitUntilTerminated, ResultCode);
end;
if(InstallClient) then begin
ExtractTemporaryFile('ClientSetup.msi');
Exec('msiexec',ExpandConstant('/i "{tmp}\ClientSetup.msi" /qb INSTALLDIR="{code:GetInstallPath}\Client\" ALLUSERS=2'),'', SW_SHOW, ewWaitUntilTerminated, ResultCode);
end;
end;
end;
मुझे लगता है कि जांच: क्या मुझे पता करने के लिए आवश्यक है। मैंने इनो सेटअप सहायता फ़ाइल में जो कुछ भी देखा है (जो आश्चर्यजनक रूप से काफी सहायक रहा है) में यह कुछ भी नहीं देखा था और यह ISTool gui में एक विकल्प नहीं था। +1 अब और स्वीकार करता है अगर यह काम करता है :) – Davy8
मैं उत्तर में प्रासंगिक सहायता फ़ाइल सेक्शन से जुड़ा हूं ("फ़ंक्शन चेक करें" देखें)। यह वहां है। ISTool भी इसका समर्थन करता है। बस "स्क्रिप्टिंग" खंड में किसी भी आइटम के "सामान्य" टैब को देखें। यदि आपने पहले से ही एक बूलियन परिणाम के साथ कार्यों को लिखा है तो आप उन्हें वहां एक ड्रॉपडाउन से चुन सकते हैं। –
हाँ, मैंने देखा कि मैंने ऐसा करने के बाद। ऐसा लगता है कि यह काम करता है और आदर्श के करीब है क्योंकि मुझे शायद घंटे/दिन खर्च किए बिना कस्टम प्रगति संवाद और सामान बनाने के बिना मिल जाएगा। धन्यवाद :) – Davy8