- 【初心者歓迎】C/C++室 Ver.95【環境依存OK】 [転載禁止]©2ch.net
353 :デフォルトの名無しさん[sage]:2015/03/24(火) 15:41:47.42 ID:EgIv9KoM - Visual C++6.0 MFCについてで、調べたけど専用スレがなさそうなのでここに質問します
普通のMFC AppWizardで作成したSDIのドキュメントビューなのですが、実行してファイルをオープンした際 そのファイルがショートカットファイルだった場合、カレントディレクトリがファイルをオープンしたディレクトリではなく リンクしたファイルの元ファイルのディレクトリになってしまいます そうではなくオープンしたフォルダーのディレクトリ(つまりショートカットファイルがあるところ)をゲットしたいのですが どうしたらいいのでしょうか
|
- 【初心者歓迎】C/C++室 Ver.95【環境依存OK】 [転載禁止]©2ch.net
355 :デフォルトの名無しさん[sage]:2015/03/24(火) 17:22:36.77 ID:EgIv9KoM - それは実行EXEファイルの場所ではないですか?
そうではなく、ファイルオープンダイアログで開いて選択した場所を得たいのです そのファイルがlnk拡張子のときが問題なのです
|
- 【初心者歓迎】C/C++室 Ver.95【環境依存OK】 [転載禁止]©2ch.net
358 :デフォルトの名無しさん[sage]:2015/03/24(火) 18:33:51.66 ID:EgIv9KoM - >>356
おお、出来ました。ああ、APIのスレもあったのですね。ありがとうございます。今度はそちらで質問しますね とりあえず、結果だけ書くと、xxDoc.cppにOnFileOpen()をClassWizardで作ってその中で CFileDialog d( TRUE, NULL, NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT | OFN_NODEREFERENCELINKS, NULL, NULL ); CString newName; if( d.DoModal() == IDOK ) { newName = d.GetPathName(); } AfxGetApp()->OpenDocumentFile(newName); としました。リンク先を見つける関数は持っていますので大丈夫ですw オープンしたディレクトリにあるリンクファイルのリストを取りたかったのです
|
- 【初心者歓迎】C/C++室 Ver.95【環境依存OK】 [転載禁止]©2ch.net
359 :デフォルトの名無しさん[sage]:2015/03/24(火) 18:34:48.29 ID:EgIv9KoM - >>356-357 でした。ありがとうございました
|
- 【初心者歓迎】C/C++室 Ver.95【環境依存OK】 [転載禁止]©2ch.net
360 :デフォルトの名無しさん[sage]:2015/03/24(火) 19:02:34.49 ID:EgIv9KoM - 追加
最後のAfxGetApp()->OpenDocumentFile(newName);はいりませんでした。これをつけると、ショートカットのオリジナルに 置き換えられてしまいました
|