DOBON.NETプログラミング掲示板過去ログ
al.exeのバージョンによる動作の違い
題名: al.exeのバージョンによる動作の違い
著者: ざんてつ
日時: 2011/04/19 11:29:03
ID: 28479
この記事の返信元:
(なし)
この記事への返信:
[28480]
Re[1]: al.exeのバージョンによる動作の違い
ざんてつ
2011/04/19 11:36:30
ツリーを表示
環境/言語:[WinXP and Win7,C#,.Net Framework 2.0, Windows SDK 6.0, 7.0, 7.1]
分類:[.NET]
Visual Studio 2005(C#)を使用して
アプリケーションを作成しています。
他言語対応するために、
文字列はdllから読み込むようになっています。
下記のコマンドをバッチファイルにして、
DLLファイルを作成していました。
resgen Home.MyApp.Properties.Resources.ko.resx
AL.exe /culture:ko /out:MyApp.resources.dll /embed:Home.MyApp.Properties.Resources.ko.resources
ユーザーがDLLファイルを作成できるように
フリーのWindows SDKで動作確認しました。
すると
6.0や7.0で作成したDLLは問題なく動作したのですが、
7.1で作成したDLLは読み込まれませんでした。
サイズを見ると
6.0や7.0で作成したDLLが40KBであるのに対し、
7.1で作成したDLLは27KBしかありませんでした。
作成されたresourcesファイルに違いはなかったので、
正常に動作しないのは
AL.exeのバージョンの差が原因のようです。
7.0のAL.exeは9.0.30729.1、
7.1のAL.exeは10.0.30319.1でした。
また、
7.1にも9.0.30729.1のAL.exeがv7.1\Binに含まれているのですが、
環境変数に記述されている順序が
10.0.30319.1のAL.exeが存在するパス(\7.1\Bin\NETFx 4.0 Tools)の方が先なので、
優先的に10.0.30319.1の方が読み込まれてしまうようです。
環境変数をいじれば改善するのですが、
ユーザーにいじらせたくありません。
AL.exeのバージョンによる動作の違いについて教えてください。
どちらのバージョンでも動作するDLLが生成されるような
バッチファイルが作れればよいのですが。。。
よろしくお願いいたします
題名: Re[1]: al.exeのバージョンによる動作の違い
著者: ざんてつ
日時: 2011/04/19 11:36:30
ID: 28480
この記事の返信元:
[28479]
al.exeのバージョンによる動作の違い
ざんてつ
2011/04/19 11:29:03
この記事への返信:
(なし)
ツリーを表示
(追記)
AL.exeと同じフォルダにある
AL.exe.Configを上書したところ、
正常に動作しました。
ユーザーにAL.exe.Configを上書きさせたくないので、
AL.exe実行時の引き数か何かで
AL.exe.Configの設定を代用できれば解決しそうです。
DOBON.NET
|
プログラミング道
|
プログラミング掲示板
分類:[.NET]
Visual Studio 2005(C#)を使用して
アプリケーションを作成しています。
他言語対応するために、
文字列はdllから読み込むようになっています。
下記のコマンドをバッチファイルにして、
DLLファイルを作成していました。
resgen Home.MyApp.Properties.Resources.ko.resx
AL.exe /culture:ko /out:MyApp.resources.dll /embed:Home.MyApp.Properties.Resources.ko.resources
ユーザーがDLLファイルを作成できるように
フリーのWindows SDKで動作確認しました。
すると
6.0や7.0で作成したDLLは問題なく動作したのですが、
7.1で作成したDLLは読み込まれませんでした。
サイズを見ると
6.0や7.0で作成したDLLが40KBであるのに対し、
7.1で作成したDLLは27KBしかありませんでした。
作成されたresourcesファイルに違いはなかったので、
正常に動作しないのは
AL.exeのバージョンの差が原因のようです。
7.0のAL.exeは9.0.30729.1、
7.1のAL.exeは10.0.30319.1でした。
また、
7.1にも9.0.30729.1のAL.exeがv7.1\Binに含まれているのですが、
環境変数に記述されている順序が
10.0.30319.1のAL.exeが存在するパス(\7.1\Bin\NETFx 4.0 Tools)の方が先なので、
優先的に10.0.30319.1の方が読み込まれてしまうようです。
環境変数をいじれば改善するのですが、
ユーザーにいじらせたくありません。
AL.exeのバージョンによる動作の違いについて教えてください。
どちらのバージョンでも動作するDLLが生成されるような
バッチファイルが作れればよいのですが。。。
よろしくお願いいたします