あるPCでwindows7 ,VC2008の環境でプログラミング,コンパイル,実行(Debug,Release)出来たプログラムを
別のPCでwindows7,VC2008の環境ではDebugでコンパイルは出来ますが,
実行すると サイドバイサイド構成が正しくない と言われます.
Releaseならば,コンパイルも実行も出来ます.
イベントログを見たらわかる,とかランタイム入れたらなどとインターネットで検索をしたら出たので.
色々試しましたが出来ません.
processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.21022.8”が必要なみたいなのですが・・・,それは何処で手に入るのか・・・.
•Microsoft Visual Studio 2008/.NET Framework 3.5 のランタイム
入れた.
•Windows Update
最新状態にした
•他色々したが・・・
10時間以上ハマってます・・・orz
他に何をすればいいのかわかりません.
vcredist_IA64.exeを入れたらいいんじゃないかと思ったのですが
「コンピューターの種類が現在のコンピューター以外のファイルです.」とか言われる^^;
VC++2008 サイドバイサイド
Re: VC++2008 サイドバイサイド
実行したときのエラー内容を示して下さい。
また、イベントログの内容もですね。
おそらくはランタイムのバージョンが変わってしまったために起こったものです
一応トラブルシューティングを示しときます。。
C/C++ 分離アプリケーションおよび side-by-side アセンブリのトラブルシューティング
また、イベントログの内容もですね。
おそらくはランタイムのバージョンが変わってしまったために起こったものです
一応トラブルシューティングを示しときます。。
C/C++ 分離アプリケーションおよび side-by-side アセンブリのトラブルシューティング
written by へにっくす
Re: VC++2008 サイドバイサイド
【追記】
PCの環境はどちらも64bitです.一方はi7 960(8スレッド),もう一方はi5 2400(4スレッド)
プログラムにはOPENMPを使用してスレッド処理しています.
OPENMPの記述を使ってないものは問題無く動作しました.
【コンパイル時にプロンプトに表示されるエラー】
このアプリケーションのサイド バイ サイド構成が正しくないため、アプリケーションを
開始できませんでした。詳細については、アプリケーションのイベント ログを参照する
か、コマンド ライン ツール sxstrace.exe を使用してください。
【イベントログ/Windowsログ/アプリケーション/エラー/SidebySide の示すエラー(フォルダ名,プログラム名一部変更して載せてます.)】
"C:\Users\user1111\Desktop\aaa\aaa\Debug\aaa.exe" のアクティブ化コンテキストの生成に失敗しました。 従属アセンブリ Microsoft.VC90.DebugOpenMP,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.21022.8" が見つかりませんでした。 詳細な診断を行うには sxstrace.exe を実行してください。
PCの環境はどちらも64bitです.一方はi7 960(8スレッド),もう一方はi5 2400(4スレッド)
プログラムにはOPENMPを使用してスレッド処理しています.
OPENMPの記述を使ってないものは問題無く動作しました.
【コンパイル時にプロンプトに表示されるエラー】
このアプリケーションのサイド バイ サイド構成が正しくないため、アプリケーションを
開始できませんでした。詳細については、アプリケーションのイベント ログを参照する
か、コマンド ライン ツール sxstrace.exe を使用してください。
【イベントログ/Windowsログ/アプリケーション/エラー/SidebySide の示すエラー(フォルダ名,プログラム名一部変更して載せてます.)】
"C:\Users\user1111\Desktop\aaa\aaa\Debug\aaa.exe" のアクティブ化コンテキストの生成に失敗しました。 従属アセンブリ Microsoft.VC90.DebugOpenMP,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.21022.8" が見つかりませんでした。 詳細な診断を行うには sxstrace.exe を実行してください。
Re: VC++2008 サイドバイサイド
ふむOrz さんが書きました:【イベントログ/Windowsログ/アプリケーション/エラー/SidebySide の示すエラー(フォルダ名,プログラム名一部変更して載せてます.)】
"C:\Users\user1111\Desktop\aaa\aaa\Debug\aaa.exe" のアクティブ化コンテキストの生成に失敗しました。 従属アセンブリ Microsoft.VC90.DebugOpenMP,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.21022.8" が見つかりませんでした。 詳細な診断を行うには sxstrace.exe を実行してください。
OpenMP ライブラリ使用トラブル解決
これで対処できないかな?
ちなみにIA64は違いますよ。64bit版ならx64の方です。
上記のエラーをみる限り、x86の方を見てるみたいですので今回は32bit版のを普通にインストールすればよいかと
・・・って最初の投稿を見る限り、入れていると書いてますね。x64版をインストールしてもダメですかね?
コンパネでプログラムと機能を選択し、
2008 Redistributableのバージョンを調べてください。9.0.21022.8以上になってますか?
written by へにっくす
Re: VC++2008 サイドバイサイド
遅くなりましたが2008 Redistributable x86,64共に 9.0.21022というのはあります. 9.0.30729もあります.へにっくす さんが書きました:ふむOrz さんが書きました:【イベントログ/Windowsログ/アプリケーション/エラー/SidebySide の示すエラー(フォルダ名,プログラム名一部変更して載せてます.)】
"C:\Users\user1111\Desktop\aaa\aaa\Debug\aaa.exe" のアクティブ化コンテキストの生成に失敗しました。 従属アセンブリ Microsoft.VC90.DebugOpenMP,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.21022.8" が見つかりませんでした。 詳細な診断を行うには sxstrace.exe を実行してください。
OpenMP ライブラリ使用トラブル解決
これで対処できないかな?
ちなみにIA64は違いますよ。64bit版ならx64の方です。
上記のエラーをみる限り、x86の方を見てるみたいですので今回は32bit版のを普通にインストールすればよいかと
・・・って最初の投稿を見る限り、入れていると書いてますね。x64版をインストールしてもダメですかね?
コンパネでプログラムと機能を選択し、
2008 Redistributableのバージョンを調べてください。9.0.21022.8以上になってますか?
9.0.21022と9.0.21022.8は同じですよね・・・.というかどちらにせよ9.0.30729は最新版だろうし・・・.まさか両方入っているとダメって線もあるのかな.
Re: VC++2008 サイドバイサイド
Debug版だから,再頒布可能 (Redistributable) 系の物をインストールしても入らないと思います。
%WINDIR%\WInSxS\x86_microsoft.vc90.debugopenmp_1fc8b3b9a1e18e3b_9.0.21022.8_none_469e7800ca24708e
がないのであれば,VC++の修復インストールを試みるのもよいかもしれません。
あとは,インストーラー作って個別インストールする方法や最新版にバインドさせる方法などが,Johan Seland: Running 64-bit OpenMP Debug Builds compiled with Visual Studio 2008 SP1に載っていました。
9.0.21022.8があってもリダイレクト用のpolicyがないと9.0.30729.4148や9.0.30729.5570や9.0.30729.6161にはリダイレクトされませんし,
9.0.30729.4148へのバインドの場合、9.0.30729.6161には自動ではリダイレクトされません。
%WINDIR%\WInSxS\x86_microsoft.vc90.debugopenmp_1fc8b3b9a1e18e3b_9.0.21022.8_none_469e7800ca24708e
がないのであれば,VC++の修復インストールを試みるのもよいかもしれません。
あとは,インストーラー作って個別インストールする方法や最新版にバインドさせる方法などが,Johan Seland: Running 64-bit OpenMP Debug Builds compiled with Visual Studio 2008 SP1に載っていました。
オフトピック
with SP1でちゃんと9.0.21022.8のデバッグ版をインストールしていないのかな?
だとすると,SP1ではないVC++2008をインストール→アンインストール→VC++2008withSP1をインストールになるのかも。
だとすると,SP1ではないVC++2008をインストール→アンインストール→VC++2008withSP1をインストールになるのかも。
Side by Sideなので,バージョン (や言語) をきっちりと見ています。Orz さんが書きました:9.0.21022と9.0.21022.8は同じですよね・・・.というかどちらにせよ9.0.30729は最新版だろうし・・・.まさか両方入っているとダメって線もあるのかな.
9.0.21022.8があってもリダイレクト用のpolicyがないと9.0.30729.4148や9.0.30729.5570や9.0.30729.6161にはリダイレクトされませんし,
9.0.30729.4148へのバインドの場合、9.0.30729.6161には自動ではリダイレクトされません。
Re: VC++2008 サイドバイサイド
質問内容からしてマニフェストは自動生成されたものですよね。
プロジェクトフォルダ丸ごと別PCにコピーして使っているのでしょうか。
そうであればDebugフォルダをいったん削除してしまえばマニフェストが再作成されて解決したりしないでしょうか。
プロジェクトフォルダ丸ごと別PCにコピーして使っているのでしょうか。
そうであればDebugフォルダをいったん削除してしまえばマニフェストが再作成されて解決したりしないでしょうか。