- - PR -
iniファイル読込でエラー
投稿者 | 投稿内容 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2004-03-29 21:26
情報ありがとうございます。 I/Fを変更するか>MS いや、いつものことだった。。。 ん?VS.NET2002を使っているのに、Framework Ver.1.1で動作している? ↓↓よねKENさん↓↓ 実験ありがとうございます。ドキュメント不備…それは痛い。。。 [ メッセージ編集済み 編集者: Jitta 編集日時 2004-03-30 08:29 ] | ||||||||||||
|
投稿日時: 2004-03-30 01:13
いや、さすがにI/Fを安易に変えることはないでしょう。 おそらくはドキュメントの不備・・・ということで実験してみました。 以下、抜粋。
.NET Framework 1.0 SDKのvbc.exeでコンパイルして実験しましたが、 button1をクリックしてから、メモ帳でこのファイルを開くと 他のプロセスにロックされている、と怒られました。 button2をクリックしてこのファイルを閉じてからであれば、メモ帳で普通に開けました。 ということで、ドキュメントの不備ということで。 (元のドキュメントの不備か、日本語版だけの不備かはちょっとわかりませんが) [ メッセージ編集済み 編集者: よねKEN 編集日時 2004-03-30 01:21 ] | ||||||||||||
|
投稿日時: 2004-03-30 11:19
とかかれていますが、1.0上で動作させた結果なんでしょうか? ・・・というか、1.0でビルドして1.1で動作させてた場合、どちらの動作になるんでしょうか? | ||||||||||||
|
投稿日時: 2004-03-30 12:10
1.0で間違いなく動いた!という確認はしてません(汗)が、 理論上は1.0上での動作のはずです。 .NET Framework SDK 1.0付属のvbcでコンパイルし、 作成されたEXEを普通に起動しました。 .NET Framework 1.0でコンパイルしたEXEは原則として .NET Framework 1.0上として動作するはずです。 (1.1が入っていても勝手に1.1で実行されることはありません) Configファイルで指定すれば1.1上で動かすことはできますが。 Configファイルで1.1のランタイムの使用を指定すれば、 1.1としての動作になると思います。 [ メッセージ編集済み 編集者: よねKEN 編集日時 2004-03-30 12:12 ] | ||||||||||||
|
投稿日時: 2004-03-30 13:15
失礼しました。
下記のコードで確認してみましたが、確かにビルドしたバージョンで動作してますね。
| ||||||||||||
|
投稿日時: 2004-03-30 13:22
DLL Hellを避ける一つの工夫として、.NET Frameworkでは、GACに登録されたDLLはすべてバージョンごとに別のディレクトリ(ディレクトリ、というのは語弊があるのかな?)にしまわれ、それぞれのバージョンを参照します。 自作のコンポーネントでも、厳密名をつけてGACで管理できるようにすれば、「このバージョン以降を使う」などの設定ができるようになるようです。 | ||||||||||||
|
投稿日時: 2004-03-30 14:09
これは知っていましたが、VB.NETでパラメータを省略した場合、アセンブリ作成時に既定値が設定されるのか実行時に既定値が設定されるのか疑問だったのです。
これは知りませんでした。 情報ありがとうございます。 [ メッセージ編集済み 編集者: ぼると 編集日時 2004-03-30 14:12 ] | ||||||||||||
|
投稿日時: 2004-03-30 14:13
http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/cpguide/html/cpcontargetingnetframeworkversion.asp
ここに NET Framework Version 1.0 で作成されたアプリケーションは、既定では、自動的に .NET Framework Version 1.1 で実行されます。 って書いてあるんですけど。本当のところはどうなんですか? 少なくとも同じマシンにフレームワーク1.0と1.1を入れて、VisualStudio2002で(別マシンで)コンパイルしていたASP.NETのプログラムは1.1上で動作しました。 ASP.NETプログラムはaspnet_regiisで設定する必要があるそうで、実際そのようにしましたが、ASP.NETでないプログラムはどうなるんでしょうね。 [ メッセージ編集済み 編集者: 一郎 編集日時 2004-03-30 14:18 ] |