きたざわです。
「ファイルを開く」処理でCFileDialogを使ったときの
複数選択について質問します。
たくさんのファイルを選択できるようにするために、
ファイル名を格納するバッファを拡張しました。
********
CFileDialog dlg;
// ~ 略
dlg.m_ofn.lpstrFile = 10000;
dlg.m_ofn.nMaxFile = FILEBUFSIZE;
*********
のようにです。
でも、これで10000文字まで増やしたとしても
それを超えたらメモリを破壊してしまいますよねぇ。
これを回避する方法はありませんか?
1.任意の長さの文字列を取得できるようにする方法
2.もしくは、選択されたファイルの文字数を監視して落ちないようにする方法
を知っている方がいらっしゃったら教えてください!
できることなら、1.の解決方法の方が好ましいのですが・・・
2.の方法の場合は、CFileDialog::OnLBSelChangedNotify()のタイミングで
選択されたファイル名をカウントすればできそうな気がするのですが、
「いや、もっと簡単な方法があるよ」とかがあれば教えていただきたいです。
これって、FAQなのでしょうか?
誰でもぶちあたりそうな問題のような気がするのですが
解決方法が見当たりません。
私の調べ方が悪いのでしょうか??(T.T)
//////////////////////////////////////
北澤 美幸
k...@comtec.kicnet.co.jp
//////////////////////////////////////
「ファイルを開く」処理でCFileDialogを使ったときの
複数選択について質問します。
たくさんのファイルを選択できるようにするために、
ファイル名を格納するバッファを拡張しました。
********
CFileDialog dlg;
// ~ 略
dlg.m_ofn.lpstrFile = 10000;
dlg.m_ofn.nMaxFile = FILEBUFSIZE;
*********
のようにです。
でも、これで10000文字まで増やしたとしても
それを超えたらメモリを破壊してしまいますよねぇ。
これを回避する方法はありませんか?
1.任意の長さの文字列を取得できるようにする方法
2.もしくは、選択されたファイルの文字数を監視して落ちないようにする方法
を知っている方がいらっしゃったら教えてください!
できることなら、1.の解決方法の方が好ましいのですが・・・
2.の方法の場合は、CFileDialog::OnLBSelChangedNotify()のタイミングで
選択されたファイル名をカウントすればできそうな気がするのですが、
「いや、もっと簡単な方法があるよ」とかがあれば教えていただきたいです。
これって、FAQなのでしょうか?
誰でもぶちあたりそうな問題のような気がするのですが
解決方法が見当たりません。
私の調べ方が悪いのでしょうか??(T.T)
//////////////////////////////////////
北澤 美幸
k...@comtec.kicnet.co.jp
//////////////////////////////////////