2010-12-07 15 views
2

Ich bin für eine vollständige Probe von WIX-Projekt mit Bezug auf .NET-DLL (komplette Wix VS-Projekt,. NET Dll VS-Projekt und kompilierte. NET Dll).Wix und benutzerdefinierte. NET Dll

Ich versuche, SampleAskKeyNet und ständig ich habe Fehler "Es gibt ein Problem mit diesem Windows Installer-Paket. Eine DLL für diese Installation abzuschließen erforderlich konnte nicht ausgeführt werden. Wenden Sie sich an Ihr Support-Personal oder Paket-Anbieter und ich ' Ich habe versucht, was ich falsch gemacht.

Ich erstellte WIX-Projekt in VS,. NET-DLL-Projekt in VS, kompilierte DLL-Projekt, über CheckPidPackage.dll zu Wix VS-Projekt-Verzeichnis kopieren und Wix-Projekt kompilieren. Dann ich es ausführen und ich erhalte diesen Fehler.

Antwort

1

Für mich war es meine Custom DLLEntry nicht meine Methode Namen übereinstimmen. d. h.

+1

Wow. Ein Syntaxfehler meinerseits. Oh! Danke für's Posting! – granadaCoder

4

Link erwähnt in akzeptierter Antwort (von user431821) war in der Tat hilfreich, aber die genaue Sache, die hilfreich für mich war.

Benutzerdefinierte Aktionen Projekt erstellt 2 dlls. Wenn Projekt CustomActionProject ist, schaffen es CustomActionProject.dll und CustomActionProject.CA.dll

Ich war Referenzierung auf CustomActionProject.dll wie unter dem regulären DLL ist.

<Binary Id="CustomActionProject" 
    src="..\CustomActionProject\bin\$(var.Configuration)\CustomActionProject.dll" /> 
<CustomAction Id="MyAction" 
    Return="check" 
    BinaryKey="CustomActionProject"     
    DllEntry="Validate"/> 

WIX schafft CustomActionProject.CA.dll die eigentlich nicht die .NET-Assembly verwaltet, aber nicht verwalteten Montage. Also müssen wir uns darauf beziehen, anstatt auf einen normalen.

<Binary Id="CustomActionProject" 
    src="..\CustomActionProject\bin\$(var.Configuration)\CustomActionProject.CA.dll" /> 
<CustomAction Id="MyAction" 
    Return="check" 
    BinaryKey="CustomActionProject"     
    DllEntry="Validate"/> 

Dies löste mein Problem.

+0

Seitliche Frage. Wie stellst du die Variable "$ (var.Configuration)" so ein, dass sie Debug oder Release korrekt aufnimmt? – granadaCoder

+1

@granadaCoder Dies ist eine integrierte Variable, siehe http://wixtoolset.org/documentation/manual/v3/votive/votive_project_references.html –

Verwandte Themen