古いwrapped activeXコントロール(ComponentOneのVSPrinter 8、正確にはvsprint8.ocx)を使用するWindowsアプリケーション(.net、VS2010)があります。 )。これにより、すべての印刷プレビューと印刷プレビューが処理されます。アプリケーションをVM(32ビット)上のWin7の新しいインスタンスに展開して実行し、このコントロールを呼び出そうとすると、次のエラーが発生します。Win7上で "protected memoryの読み込みまたは書き込みを試みました" - activeXコントロールのエラー
"保護されたメモリを読み書きしようとしました。これはしばしば、他のメモリが壊れていることを示しています。
Windows XPでもうまく動作します。興味深いことに、ターゲットVM(システム全体でAlwaysOffに設定)でDEPをオフにすると、アプリケーションが機能します。しかし、ocxを使用する実行可能ファイルだけでDEPを無効にすると、動作しません。
アイデア?ありがとう!
あなたの質問への答えとして、あなたの答えを受け入れることを忘れないでください。 ;> – dthorpe
もう1つの興味深いシワがTFSチームビルドサーバーで発生しました。 Msbuildは(DevEnvDir)Visual Studio環境変数を解決できず、継続的な統合ビルドが失敗します。この問題を回避するために、システムレベルの環境変数を追加して、DevEnvDirのグローバル値を設定しました。 DevEnvDirの値は、x64の場合は「C:¥Program Files(x86)¥Microsoft Visual Studio 10.0¥Common7¥IDE」、32ビットの場合は「C:¥Program Files¥Microsoft Visual Studio 10.0¥Common7¥IDE」です。それは一種のハッキリのようだったが、うまくいった。 – Booberry