2 Stimmen

Wie kommuniziert man mit dem .NET 3.5 SP1 Bootstrapper?

Ich bin ein benutzerdefiniertes Windows-Installationspaket für meine .NET 3.5 SP1 WPF-Anwendung erstellen. Ich möchte es zu erkennen, welche Version (wenn überhaupt) des .NET-Frameworks auf dem Computer des Kunden installiert ist, und dann automatisch von Microsoft herunterladen, wenn sie es nicht haben.

Ich habe über den .NET-Bootstrapper gelesen und ihn sogar in einem von mir erstellten ClickOnce-Installationsprogramm in Aktion gesehen. Er scheint genau das zu tun, was ich brauche.

Das Problem ist, dass ich ClickOnce nicht verwenden möchte. Ich bevorzuge NSIS. Im Wesentlichen suche ich also nach einer Dokumentation darüber, wie ich mit dem Bootstrapper kommunizieren oder ihn in irgendeiner Weise integrieren kann, um ihn in meinem eigenen Installationsprogramm nutzen zu können. Aber ich finde nicht viel.

Für jede Hilfe wären wir Ihnen sehr dankbar.

Danke! Steve

3voto

Nick Devereaux Punkte 793

Sie werden etwas brauchen wie diese aber wenn ich das benutzt habe, werden nur bis zu 2 richtig erkannt. Ich bin jetzt zu Hause, aber wenn ich zur Arbeit komme, werde ich meinen Hack dieses Codes posten, damit er bis zu 3.5 SP1 funktioniert. Sie haben die Position der Versionsnummer ein wenig geändert.

Bearbeiten: Meine Version veröffentlicht auf pastebin

0voto

Greg Dean Punkte 27938

Ich glaube nicht, dass man mit einem Bootstrapper wirklich kommunizieren kann. Soweit ich weiß, legt man die Voraussetzungen fest, und der Bootstrapper installiert sie nach Bedarf. Ich habe immer MSbuild verwendet. GenerateBootstrapper um dies zu tun.

<ItemGroup>
    <BootstrapperFile Include="Microsoft.Net.Framework.2.0">
        <!--This requires the either the Platform SDK or VS.Net to be installed-->
        <ProductName>Microsoft .NET Framework 2.0</ProductName>
    </BootstrapperFile>
</ItemGroup>

    <!--Create the bootstrapper-->
    <GenerateBootstrapper
         ApplicationName="MyApp"
         ApplicationFile="MyApp.msi"
         ApplicationUrl="$(ApplicationUrl)"
         BootstrapperItems="@(BootstrapperFile)"
         Culture="en"
         CopyComponents="True"

         ComponentsLocation="Relative"
         OutputPath="$(InstallationPath)\"/>

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X