VC++ 2005
-
nee, die anderen haben nur 1.1
-
das is das prob. Es muss .NET 2.0 istalled sein und dann gehts...
Keine Ahnung ob es auch noch ne andere Lösung gibt, aber was schadet es 2.0 zu installieren?
-
Eine unmanaged C++ Anwendung hat überhaupt nichts mit dem .NET Framework zu tun, und deshalb muss man dieses auch nicht installieren!
Das Problem ist ganz trivial; und dazu gibt es drei Lösungen:
1. Linke Deine EXE statisch mit der CRT/MFC/ATL
2. Installiere die CRT/MFC/ATL DLLs auf dem Zielrechner
3. Liefere die CRT/MFC/ATL DLLs mit Deiner Anwendung mit und liefere das passende Manifest für diese DLLs mit!Für die Punkte 2 und 3 braucht natürlich auch noch Deine EXE ein passendes Manifest.
-
Tc++H schrieb:
Kann ich mal deine Email Addy bekommen?
schau dir mein Profil an
-
Der Artikel "Bootstrapper for the VC++ 2005 Redists (with MSI 3.1)" scheint deine Problem zu lösen - schade das es kein Click Once für C++ Projekte gibt
-
@Jochen K.
wenn das angeblich nichts damit zu tun hat, dann sag mir bitte warum genau DAS zur Lösung des Problems führt...
-
DarkFitzi schrieb:
@Jochen K.
wenn das angeblich nichts damit zu tun hat, dann sag mir bitte warum genau DAS zur Lösung des Problems führt...Weil das .NET Framework zufällig auch die VC8 CRT installiert
Vermutlich gibt es noch andere Programme die dies auch machen, und somit auch "das Problem lösen"... das ist ja aber keine "Lösung"...
-
Vertexwahn schrieb:
schade das es kein Click Once für C++ Projekte gibt
Also... eigentlich sollte ClickOnce doch auch für C++ Projekte gehen... du musst nur das passende Manifest haben... warum sollte es nicht gehen?
-
aha das heist afaik, dass wenn ich kein ATL und MFC neutze nur das CRT mitliefern muss?
-
Ja, auf gut deutsch... Ganz genau: Du must alles mitliefern was Deine Anwendung brauchst... das kannst Du entweder "wissen" oder hiermit nachschauen:
http://www.dependencywalker.com/
-
ich werde es nochmal probieren
-
siehe MSDN: "Understanding Dependencies of a Visual C++ Application"
installier auf dem Rechner auf dem es nicht funktioniert Dependency Walker - der zeigt dir an welche DLLs Fehlen oder in der falschen Version vorliegen:
http://www.dependencywalker.com/mehr in der MSDN unter: Visual C++ Deployment (C++)
-
@Jochen Kalmbach
ClickOnce deployment for Visual C++ native applications is not supported in Visual Studio 2005; however, it is possible to deploy Visual C++ applications via ClickOnce on the command line.
muss ich gleich mal ausprobieren
-
@Jochen Kalmbach und Veretxwahn
Thx, jez muss ich nicht immer wieder das .NET 2.0 Framework installen...
-
hmm... könnte mir jemand sagen welche Datein ich genau mitliefern muss...
also ich verwende weder MFC noch ATL. Ich bin nach einiger Zeit auf den Ordner gestoßen: C:\WINDOWS\WinSxS\x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50727.42_x-ww_0de06acd
aber wenn ich die darin vorhandenen Dlls mitliefere klappt es immernoch nicht
-
ok es hat die manifest gefehlt...
-
hab das gleiche problem ...
kann mir mal bitte einer erklären was die manifest is??
bzw. wo finde ich das / wie erstelle ich das??
-
\Program Files\Microsoft Visual Studio 8\VC\Redist\x86\Microsoft.VC80.CRT
da findeste die 3 dlls und eine .manifest Datei, die brauchste
-
DarkFitzi schrieb:
\Program Files\Microsoft Visual Studio 8\VC\Redist\x86\Microsoft.VC80.CRT
da findeste die 3 dlls und eine .manifest Datei, die brauchsteUnd wenn DU die nicht findest (fehlt z.B: bei der Express Version), dann kannst Du enwteder statisch linken oder nimmst diese hier:
Dateiname:
Microsoft.VC80.CRT.manifest
Inhalt:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <!-- Copyright © 1981-2001 Microsoft Corporation --> <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> <noInheritable/> <assemblyIdentity type="win32" name="Microsoft.VC80.CRT" version="8.0.50608.0" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b" /> <file name="msvcr80.dll"/> <file name="msvcp80.dll"/> <file name="msvcm80.dll"/> </assembly>
-
Thx, auch für den Link wo alles drin stand