- - PR -
テンポラリファイルの作成
1
| 投稿者 | 投稿内容 | ||||
|---|---|---|---|---|---|
|
投稿日時: 2003-10-29 21:38
お世話になっております。
.NETでテンポラリファイルを作成する関数を探しているのですが、見つかりません。 そのような関数は存在しますか? | ||||
|
投稿日時: 2003-10-29 21:51
Path.GetTempFileName ですね。
| ||||
|
投稿日時: 2003-10-30 10:26
daiさん、ありがとうございます。
早速試してみたのですが(C++) String *xmlTmp = System::IO: とすると System::IO: とエラーが出ます。 .NET Framework1.0だからでしょうか? しかし1.0に対応したものを作成する必要があり、困っています。 何か方法はないでしょうか? | ||||
|
投稿日時: 2003-10-30 11:09
Managed VC++ でしょうか?
あまり詳しくないのですが、Mscorlib.dll の参照設定はありますよね? MSDNを見る限り、.NET Framework 1.0 にも Path.GetTempFileName はあるようです。 | ||||
|
投稿日時: 2003-10-30 12:22
Managed C++でMscorlib.dllは参照しています。
エラーをよく見ると error C2039: 'GetTempFileNameA' : 'System::IO: error C2660: 'GetTempFileNameA' : 関数に 0 個のパラメータを指定できません。 というメッセージで、どうやらコンパイラがWin32APIのGetTempFileName()と誤解している ようです。 しかし何故そうなるのか、どうすればいいのか、が分かりません。 オプションのVC++ディレクトリでFrameworkSDKのインクルード検索順序を一番高くする ということはやってみましたがダメでした。 また、新規でC++マネージ拡張のプロジェクトを作成してGetTempFileNameを使ってみたところ ビルドできましたので、元のプロジェクトの設定かソースにどこか問題があるのだと思い ますが、今のところ何が悪いのか分かりません。 何か情報をお持ちの方いらっしゃらないでしょうか? | ||||
|
投稿日時: 2003-10-30 13:40
Ascii用のGetTempFileNameAと、Unicode用のGetTempFileNameWがあって、単にGetTempFileNameとすると、どちらを使用するか判断して切り替えてくれるそうです。しかし、だからといってGetTempFileNameWとしても、おそらくリンクエラーになります^^;。 インクルードファイルの中で使うと、正しくWをリンクしてくれるのですが、なぜそうなのかは謎・・・ #某Q&Aサイトで質問があがっている内容より | ||||
1
