VC++2008です。
SHBrowseForFolderでulFlagsにBIF_NEWDIALOGSTYLEを指定すると、
ダイアログが表示されて必ず3秒くらい固まってしまうのですが、なぜでしょうか?
下のソースで、ulFlagsの行をコメントアウトすると正常に使えます。

しかし、他のPC1台ではコメントアウトしなくても正常でした。
SHBrowseForFolderを扱うshell32.dllのバージョンが関係あるのかな?と思ったのですが、
現象が起きる方がバージョンが新しかったです。
6.0.2900.6072
6.0.2900.2180

ITEMIDLIST* pidl;
BROWSEINFO bi;
ZeroMemory( &bi, sizeof( BROWSEINFO ));
bi.hwndOwner = NULL;
bi.ulFlags = BIF_NEWDIALOGSTYLE;
pidl = SHBrowseForFolder(&bi);

A 回答 (1件)

 こんばんは。



 試しましたが、特に問題は発生しませんでした。
 当方の環境は、

 VisualStudio2008SP1 C++ win32アプリケーション
 Windows XP SP3
 Shell32.dll 6.0.2900.6072

 です。

 2年程前に、以下の様な事例がありました。

 http://oshiete.goo.ne.jp/qa/5323629.html

 某セキュリティーソフトが原因ではなかろうか、と言う事です。
 VisualStudioのバージョンが違うものの、可能性としては考えられます。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

どうもネットワークフォルダを見に行くときに時間がかかる場合があるようで、
ネット回線のないPCだと一度も問題は起きませんでした。
ただ曖昧なのが、ネットワークにつなげているPCで、ノートンのセキュリティを無効にすると問題が解消されたのですが、しばらくするとまた再発します。
そして、また別にノートンをインストールしているPCでは何事も起きなかったりと、謎が多いです。個体差があるのかもしれませんね。

具体的な原因は分かりませんでしたが、一旦解決とさせていただきます。

お礼日時:2011/05/13 19:25

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング