パソコン困りごと相談
◇-Windowsのエクスプローラのようにアプリケーションを起動させたい-kozue(3/29-18:08)No.8401
 ┗Re:Windowsのエクスプローラのようにアプリケーションを起動させたい-Rei(3/29-23:26)No.8407
  ┗Re:Windowsのエクスプローラのようにアプリケーションを起動させたい-kozue(3/31-14:54)No.8432

8401Windowsのエクスプローラのようにアプリケーションを起動させたいkozue 3/29-18:08

OS名:WindowsNT
パソコン名:NEC MateNX MA46H
ソフト名:VisualC++4.0
みなさん はじまして。
VisualC++で お勉強の一環として Windowsのエクスプローラに似たものを
Version4.0 で作成しています。
いいところまでいっていたのですが 問題が発生してしまいました。
ファイルをダブルクリックすると そのファイルに関連付けされている
モジュールで起動されますよね。
もし エクスプローラのメニューの[表示]-[フォルダオプション]-[ファイル
タイプ]タブで たとえばファイル圧縮解凍ツールを選択して 編集ボタンを
押したとします。すると ダイアログが出てきて アクションのところに
open と 解凍 と書いてありました。
解凍 のほうが太文字 つまり 標準です。
open には AAA.exe が 解凍 には BBB.exe が関連付けされていました。
Windows の エクスプローラで 圧縮ファイルをダブルクリックすると
標準の BBB.exe が起動されます。
が 私が作ったもどき君では AAA.exe が起動されてしまいます。
使った関数は ShellExecuteEx() です。
Windows の エクスプローラと同じように動くようにしたいのですが
どなたかご存知ないでしょうか?
どうぞよろしくお願いいたします。

8407Re:Windowsのエクスプローラのようにアプリケーションを起動させたいRei 3/29-23:26
記事番号8401へのコメント
kozueさんは No.8401「Windowsのエクスプローラのようにアプリケーションを起
動させたい」で書きました。
>OS名:WindowsNT
>パソコン名:NEC MateNX MA46H
>ソフト名:VisualC++4.0
>みなさん はじまして。
>VisualC++で お勉強の一環として Windowsのエクスプローラに似たものを
>Version4.0 で作成しています。
>いいところまでいっていたのですが 問題が発生してしまいました。
>ファイルをダブルクリックすると そのファイルに関連付けされている
>モジュールで起動されますよね。
>もし エクスプローラのメニューの[表示]-[フォルダオプション]-[ファイル
>タイプ]タブで たとえばファイル圧縮解凍ツールを選択して 編集ボタンを
>押したとします。すると ダイアログが出てきて アクションのところに
>open と 解凍 と書いてありました。
>解凍 のほうが太文字 つまり 標準です。
>open には AAA.exe が 解凍 には BBB.exe が関連付けされていました。
>Windows の エクスプローラで 圧縮ファイルをダブルクリックすると
>標準の BBB.exe が起動されます。
>が 私が作ったもどき君では AAA.exe が起動されてしまいます。
>使った関数は ShellExecuteEx() です。
>Windows の エクスプローラと同じように動くようにしたいのですが
>どなたかご存知ないでしょうか?
>どうぞよろしくお願いいたします。

SHELLEXECUTEINFOのメンバのlpVerbに
何をセットしてますか?
NULLを設定しておけば標準のものがキック
されると思うのですけど。

8432Re:Windowsのエクスプローラのようにアプリケーションを起動させたいkozue 3/31-14:54
記事番号8407へのコメント
Reiさんは No.8407「Re:Windowsのエクスプローラのようにアプリケーションを起動さ
せたい」で書きました。
>
>SHELLEXECUTEINFOのメンバのlpVerbに
>何をセットしてますか?
>NULLを設定しておけば標準のものがキック
>されると思うのですけど。
>

"open" をセットしていました。
NULL を設定したところ 思い通りうまくいきました。
助かりました!
Reiさん ご協力感謝します!ありがとうございました!