Nous passons de VS2005 à VS2010. Nous y sommes presque, mais il y a un problème avec Crystal Reports. Nous utilisons le composant RDC (basé sur COM) dans notre application C++.CRXIR2 ne fonctionne pas avec VS2010 sur Windows 7 ni sur Vista
Sous Windows 7 ou VISTA, je n'arrive pas à faire fonctionner la visionneuse ni les commandes du concepteur. Je reçois des violations d'accès lorsque le contrôle est activé:
// from atlhost.h (line 2208)
hr = m_spOleObject->DoVerb(OLEIVERB_INPLACEACTIVATE, NULL, spClientSite, 0, m_hWnd, &m_rcPos);
La chose étrange est que quand je lance le même exe sur une machine XP, il semble fonctionner.
Nous utilisons essentiellement la classe de fenêtre « AtlAxWin100 » pour héberger le contrôle du rapport Crystal (« CrystalReports11.ActiveXReportViewer.1 ») . Je suis en utilisant la version SP6 de Crystal Reports afin que est la dernière version.
En outre, lorsque je compile le même code avec VS2005 et l'exécute sur Windows7 ou Vista tout fonctionne très bien.
Quelqu'un a-t-il une idée de ce qui pourrait causer le problème, ou des idées pour d'autres investigations?
Probablement la raison pour laquelle nous ne pouvions pas l'éteindre est que nous avons aussi le code .NET dans notre exe. Cependant, avec editbin.exe/NXCOMPAT: NO myExe.exe vous pouvez l'éteindre pour l'exe seulement! – tangens
Dans Visual Studio, vous pouvez désactiver la prévention de l'exécution des données pour votre application dans Configuration Properties-> Linker-> Advanced-> Prévention de l'exécution des données (DEP) ->/NXCOMPAT: NO – TehShrike