J'ai développé une DLL 64 bits en utilisant C++ et Visual Studio 2008 et j'essaye de l'enregistrer sur une machine cible en utilisant 'regsvr32.exe'. J'ai vérifié le fichier manifeste et il est clairement quelle version de CRT est nécessaire:VC++ Problème Redist CRT
<assemblyIdentity type='win32' name='Microsoft.VC90.CRT' version='9.0.21022.8' processorArchitecture='amd64' publicKeyToken='1fc8b3b9a1e18e3b' />
Quand j'essaie d'enregistrer le fichier que je reçois toujours un message d'erreur côte à côte indiquant que les paramètres d'application sont incorrectes et que je devrais le réinstaller.
Log Error: Generate Activation Context failed... Reference error message: The referenced assembly is not installed on your system.
La machine cible exécute Windows Xp Professional 64 bits. J'ai essayé d'installer le paquet redistribuable de VC++ correspondant (VC++ 2008 Redist x86 et), créez une installation et incluez le module de fusion correspondant (microsoft_vc90_crt_x86_x64.msm), installez tous les paquets redistribuables de VC++, etc. Peu importe ce qui est installé, il échouera toujours .
Si je vérifie les fichiers dépendants et qu'ils sont correctement situés dans le dossier WinSxS, mais si je cours Dependency Walker sur le fichier, il se plaindra aussi que les fichiers du CRT VC9 sont introuvables.
Si je compile le fichier pour 32 bits, il sera correctement enregistré sur un système d'exploitation 32 bits. Je manque d'idées et toute aide est très appréciée.
Merci,
Adrian.
EDIT * Ceci est reproductible seulement sur Win XP 64, tout fonctionne très bien sur Windows 7 64 bits.
Cela devrait fonctionner, mieux documenter votre problème. Copiez et collez le message du journal des événements * exact *, documentez le module de fusion * exact * que vous utilisez. –