Aufgabe konnte "AxImp.exe" nicht finden

8

Ich habe eine .NET 4 C # -Lösung in appharbor hochgeladen, aber wenn appharbor versucht, sie zu erstellen, erzeugt eine der c # -Klassenbibliotheken diesen Fehler:

  

Projekt   "D: \ temp \ cbymsn2u.j0c \ Eingabe \ UI \ Tray \ Tray.csproj"   baut   "D: \ temp \ cbymsn2u.j0c \ input \ Geschäft \ Crawler \ Crawler.csproj"   (GetNativeManifest-Ziel (e)):   c: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Microsoft.Common.targets (1558,9):   warning MSB3084: Aufgabe versucht zu   finde "AxImp.exe" an zwei Orten. 1)   Unter dem "C: \ Programme \ Microsoft   SDKs \ Windows \ v7.0A \ bin \ NETFX 4.0   Tools \ "prozessorspezifisches Verzeichnis   welches basierend auf generiert wird   SdkToolsPath 2) Der x86-spezifische   Verzeichnis unter "C: \ Programm   Dateien \ Microsoft   SDKs \ Windows \ v7.0A \ bin \ NETFX 4.0   Tools \ ", die von der   SDKToolsPath-Eigenschaft Sie können dazu in der Lage sein   um das Problem zu lösen, indem Sie einen von   Folgendes: 1) Stellen Sie die   "SDKToolsPath" -Eigenschaft für die   Speicherort des Microsoft Windows SDK.   c: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Microsoft.Common.targets (1558,9):   Fehler MSB3086: Task konnte nicht gefunden werden   "AxImp.exe" mit dem SdkToolsPath   "C: \ Programme \ Microsoft   SDKs \ Windows \ v7.0A \ bin \ NETFX 4.0   Tools \ "oder der Registrierungsschlüssel   "HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Microsoft   SDKs \ Windows \ v7.0A ". Stellen Sie sicher, dass   SdkToolsPath ist eingestellt und das Werkzeug   existiert im richtigen Prozessor   spezifischer Standort unter der   SdkToolsPath und das der Microsoft   Windows SDK ist installiert Fertig   Bauprojekt "Tray.csproj" -   FEHLGESCHLAGEN.

Es scheint keine unterschiedlichen Referenzen in Crawler.csproj zu geben, woher kommt dieser Fehler? Derselbe Code baut lokal gut auf.

    
Justin 07.05.2011, 18:52
quelle

1 Antwort

11

Es sah aus, wo das Tool installiert werden soll, c: \ Programme \ Microsoft SDKs \ Windows \ v7.0A \ bin \ NETFX 4.0 Tools \ AxImp.exe ist der normale Speicherort. Sie können dies auf Ihrem eigenen Computer überprüfen. Ich weiß nicht genau, was AppHarbor macht, aber die Chancen stehen gut, dass sie dieses Tool absichtlich entfernt haben.

Es gibt wenig Hoffnung, AxImp.exe auf einem Remote-Build-Server auszuführen. Die ActiveX-Komponente wird nicht auf diesem Computer installiert. Sie müssen AxImp.exe auf Ihrer eigenen Arbeitsstation ausführen, es muss nur einmal ausgeführt werden. Fügen Sie die zwei Assemblys, die es generiert, zu Ihrem Projekt hinzu, interop.foo.dll und axinterop.foo.dll. Legen Sie die Eigenschaft Copy Local auf true fest.

Wenn Sie tatsächlich beabsichtigen, Ihre App auf diesem Remotecomputer auszuführen, stoppen Sie jetzt sofort, das ActiveX-Steuerelement wird nicht auf diesem Computer installiert. Es installiert zu bekommen sollte ein Wunder oder zwei nehmen.

    
Hans Passant 07.05.2011, 20:48
quelle

Tags und Links