Je suis confronté à un problème de compatibilité entre windows XP et windows 7 pour l’exécution d'un objet COM, je m'explique :
1) J'ai une DLL C# compilé sous Windows 7
- Quand je l'utilise sous Windows 7 ça tourne impeccable
- Quand je l'utilise sous windows XP ça ne fonctionne pas
2) J'ai donc recompilé cette DLL sous Windows XP
- Quand je l'utilise sous Windows 7 ça ne fonctionne pas
- Quand je l'utilise sous windows XP ça tourne impeccable
3) Conclusion il y a un problème de compatibilité en windows 7 et XP du à la compilation mais quoi ?
Le problème est maintenant résolu, la DLL C# exposée via COM fonctionne sur le poste où elle est compilée parce qu'elle est également déployée automatiquement sur ce même poste !
Par contre sur un autre poste, cela ne marchais pas car elle n'y est pas déployée correctement...je l'ai donc installé sur l'autre machine avec le "regasm.exe" et ça roule.
Question bête, est-ce que sur Seven, tu serais en 64 bits ?
Dans ce cas, force la compilation en x86 (32 bits).
---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS et aussi ce lien[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list ---
Mon site
"ça ne fonctionne pas "
Un message d'erreur ou un comportement incorrect ? ça aidera pour le diagnostique.
---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS et aussi ce lien[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list ---
Mon site
---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS et aussi ce lien[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list ---
Mon site
- je travail sous visual studio 2005 framework 2.0
- j'ai 2 projets :
**Une DLL (MF_LoaderEIA.dll) qui est développé en C# qui utilise une InterfaceImplementation (Wrapper), la DLL est inscrit COM Interop pour être utilisé dans un environnement non managé (C++)
public interface ManagedInterface
{
...
}
public class InterfaceImplementation : ManagedInterface
{
...
}
**Une Application qui est développé en C++ (non managé) et qui utilise MF_LoaderEIA.dll (Objet COM)
Je pense que ça sera plus simple que ta méthode actuelle.
---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS et aussi ce lien[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list ---
Mon site