Domanda

Sto valutando InstallShield 2010, e sto cercando di impostare alcuni parametri della riga di comando per lo SQL Server 2008 prerequisito in fase di esecuzione dell'utente. Sembra che il presupposto è definita interamente nelle file .prq (XML-style).

Wise for Windows utilizzato WiseScript per chiamare le installazioni dei prerequisiti. InstallAware sembra avere qualcosa di simile, con la propria scripting. Fa qualcosa di simile per esistere InstallShield?

È stato utile?

Soluzione

usiamo è v12; Ho costruito un file .prq per lo scopo (non forniscono un .prq per SQL 2008 per IS v12). In primo luogo sono andato a http://msdn.microsoft.com/en-us/ biblioteca / ms144259.aspx per ottenere tutti i possibili argomenti della riga di cmd. Poi ho usato l'editor IS PRQ per creare la struttura di base .prq. Poi ho modificato manualmente il file .prq (XML) per (a) facile piccoli aggiustamenti in futuro e (b) per semplificare la diff di controllo versione.

    <?xml version="1.0" encoding="utf-8"?>
<SetupPrereq>
    <conditions>
        <condition Type="16" Comparison="2" Path="[ProgramFilesFolder]Microsoft SQL Server\100\COM" FileName="sqlresld.dll" ReturnValue="2007.100.1600.22"/>
    </conditions>
    <files>
        <file LocalFile="&lt;ISProductFolder&gt;\SetupPrerequisites\Microsoft SQL Server 2008 Express with Tools\SQLEXPRWT_x86_ENU.exe" CheckSum="BCC335711D44BAFC420B5165D2F04647" FileSize="0,229169680"/>
    </files>
    <execute file="SQLEXPRWT_x86_ENU.exe" requiresmsiengine="1"
        cmdline      ="/INSTANCEID=AV /INSTANCENAME=AV /ACTION=Install /FEATURES=SQLENGINE,SSMS /HELP=0 /ERRORREPORTING=0 /SQMREPORTING=0 /INDICATEPROGRESS=0 /QUIETSIMPLE=1 /FILESTREAMLEVEL=0 /ENABLERANU=1 /TCPENABLED=1 /NPENABLED=0 /ADDCURRENTUSERASSQLADMIN=1 /AGTSVCACCOUNT=&quot;NT AUTHORITY\NETWORK SERVICE&quot; /AGTSVCSTARTUPTYPE=Manual /BROWSERSVCSTARTUPTYPE=Automatic /SQLSVCSTARTUPTYPE=Automatic /SQLSVCACCOUNT=&quot;NT AUTHORITY\NETWORK SERVICE&quot; /RSSVCSTARTUPTYPE=Automatic" 
        cmdlinesilent="/INSTANCEID=AV /INSTANCENAME=AV /ACTION=Install /FEATURES=SQLENGINE,SSMS /HELP=0 /ERRORREPORTING=0 /SQMREPORTING=0 /INDICATEPROGRESS=0 /QUIETSIMPLE=1 /FILESTREAMLEVEL=0 /ENABLERANU=1 /TCPENABLED=1 /NPENABLED=0 /ADDCURRENTUSERASSQLADMIN=1 /AGTSVCACCOUNT=&quot;NT AUTHORITY\NETWORK SERVICE&quot; /AGTSVCSTARTUPTYPE=Manual /BROWSERSVCSTARTUPTYPE=Automatic /SQLSVCSTARTUPTYPE=Automatic /SQLSVCACCOUNT=&quot;NT AUTHORITY\NETWORK SERVICE&quot; /RSSVCSTARTUPTYPE=Automatic"
    />
    <dependencies>
        <dependency File="&lt;ISProductFolder&gt;\SetupPrerequisites\Microsoft Installer 4.5 for XP.prq"/>
        <dependency File="&lt;ISProductFolder&gt;\SetupPrerequisites\Microsoft Installer 4.5 for Windows Server 2003 or 64 bit XP.prq"/>
        <dependency File="&lt;ISProductFolder&gt;\SetupPrerequisites\Power Shell 1.0 for Windows XP.prq"/>
        <dependency File="&lt;ISProductFolder&gt;\SetupPrerequisites\Power Shell 1.0 for Windows Server 2003.prq"/>
    </dependencies>
    <properties Id="Microsoft SQL Server 2008 Express with Tools" Description="This installs Microsoft SQL Server 2008 Express Edition (SQL Server Express). The /qn switch suppresses all Setup dialog boxes and error messages. See http://msdn2.microsoft.com/en-us/library/ms144259.aspx for more information about the commad line options. The SQL setup logs to %programfiles%\Microsoft SQL Server\100\Setup Bootstrap\Log\"/>
</SetupPrereq>

Altri suggerimenti

Sì - facendo clic destro sul presupposto SQL Server -> "applicazione per l'esecuzione"' scheda -.> 'Specifica la riga di comando per l'applicazione'

L'unico modo che conosco per farlo è quello di scrivere un helper.exe che la PRQ chiama. L'EXE avrebbe bisogno di rilevare le impostazioni di Windows e silenziosamente passare gli argomenti corretti alla reale Prereq EXE / MSI.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top