0

MFCリボンを使用するアプリケーションがあります。VisualStudio2010で開発されています。奇妙な問題に直面しています。このアプリは、Windows7およびWindows2008R2で正常に動作します。ただし、Windows 2008でリソースからリボンを読み込もうとすると、クラッシュします。正確な線は

RibbonBar-> LoadFromResource(IDR_RIBBON1); //IDR_RIBBON1はリソースIDです。

スタックトレースは以下のとおりです

gui.exe!ATL::CComPtrBase<IXMLDOMDocument>::~CComPtrBase<IXMLDOMDocument>()  Line 162 + 0xa bytes    C++
gui.exe!ATL::CComPtr<IXMLDOMDocument>::~CComPtr<IXMLDOMDocument>()  + 0x11 bytes    C++
gui.exe!ATL::CComQIPtr<IXMLDOMDocument,&_GUID_2933bf81_7b36_11d2_b20e_00c04f983e60>::~CComQIPtr<IXMLDOMDocument,&_GUID_2933bf81_7b36_11d2_b20e_00c04f983e60>()  + 0x11 bytes    C++
gui.exe!ATL::CXMLNode<IXMLDOMDocument>::~CXMLNode<IXMLDOMDocument>()  Line 47 + 0xb bytes   C++
gui.exe!ATL::CXMLDocument::~CXMLDocument()  Line 269 + 0x13 bytes   C++
gui.exe!CXMLParserRoot::~CXMLParserRoot()  Line 423 + 0x43 bytes    C++
gui.exe!CMFCRibbonInfo::Read(unsigned char * lpBuffer=0x013acb14, unsigned int nSize=83851)  Line 703 + 0x15 bytes  C++
gui.exe!CMFCRibbonInfoLoader::LoadFromBuffer(unsigned char * lpBuffer=0x013acb14, unsigned int nSize=83851)  Line 112 + 0x1b bytes  C++
gui.exe!CMFCRibbonInfoLoader::Load(const char * lpszResID=0x000005d8, const char * lpszResType=0x0000001c, HINSTANCE__ * hInstance=0x00400000)  Line 85 + 0x1c bytes    C++
gui.exe!CMFCRibbonBar::LoadFromResource(const char * lpszXMLResID=0x000005d8, const char * lpszResType=0x0000001c, HINSTANCE__ * hInstance=0x00000000)  Line 740 + 0x17 bytes   C++
gui.exe!CMFCRibbonBar::LoadFromResource(unsigned int uiXMLResID=1496, const char * lpszResType=0x0000001c, HINSTANCE__ * hInstance=0x00000000)  Line 731    C++

この問題についての提案、アドバイスは大歓迎です。さらに情報が必要かどうか尋ねてください。

4

2 に答える 2

0

デプロイされたマシンに再配布可能なパッケージをインストールしようとしましたか?Windows(Server)2008R2にはVisualC ++ 2010再頒布可能パッケージが付属しているが、WindowsServer2008には付属していない可能性があります。また、Visual StudioをSP1に更新した場合は、SP1の再配布可能なパッケージを使用する必要があることも考慮に入れてください。

于 2012-11-01T11:37:51.587 に答える