
今晩は,質問させていただきます.どうぞよろしくお願いいたします.
環境:VB2008 + VistaとXP でございます。
今開いているフォルダのパス一覧を取得いたしたく、検索いたしましたところ
http://oshiete.goo.ne.jp/qa/4475756.html
にご紹介して下さっておりましたため、同じようにコーディングさせていただきました。
>Shell32.dllとShDocVw.dllを参照設定して
> Dim sh As New Shell32.Shell
> Dim objWins As SHDocVw.IShellWindows = sh.Windows
> For Each oWeb As SHDocVw.InternetExplorer In objWinds
> Debug.Print(oWeb.LocationName & " " & oWeb.FullName)
> Next
Windows7上ではうまく動作いたしますが、何故かVistaとXPではエラーが出てまいります。
・Vistaの場合:デバッグ中(緑の再生ボタン)はうまく、エクスプローラで開いている
フォルダのパスが取れます。
しかし、ビルドいたしましたExeファイルから実行いたしますと、
添付図のようなエラーメッセージが出てまいります。
・XPの場合: デバッグ中・ビルド後ともにエラーになります。
Vista(可能でございましたらXPも)でうまく機能させるため、何かよいコーディング方法など
ございませんでしょうか?
まったく別の方法でも結構でございます。(XPは半分諦めかけでございますが。。。)
もし何か良さそうな方法などございましたら、是非ヒントをいただければと思います。
もしお詳しい方がいらっしゃいましたら,どうぞよろしくお願いいたします。

No.1ベストアンサー
- 回答日時:
COMを参照設定しているので 出来上がったEXEのみではなく interop.ShDocVw.dllとinterop.Shell32.dllもEXEと同じフォルダーに無いといけないのかも …
Setupプロジェクトを作ってインストールしましょう
出来上がったEXEとinteropのDLL2つを含むようにします
Setupプロジェクトを新規に作成します
ソリューションにインストール対象のプロジェクトを追加します
Setupプロジェクトのアプリケーションフォルダーを選択します
プロジェクト > 追加 > プロジェクト出力
プロジェクト名で 作成したアプリを選択
リスト項目で『プライマリ出力』を選択
OKをクリック
これで
ieframe.dll interop.ShdocVw.dll interop.Shell32.dll Shell32.dll 作成したアプリ
が右ペインに追加されます
ieframe.dllとShell32.dllはインストールには不要なようですので
おのおの選択して プロパティウィンドウの 『Exclude』をTrueに変更してセットアップから排除します
この状態で セットアッププロジェクトをビルドして
setup.exe と セットアッププロジェクト名.msi の2本を使ってインストールしてみましょう
redfox63様
どうもありがとうございます!
ご活躍拝見いたしておりますm(_ _)m
>Setupプロジェクトを作ってインストールしましょう
調べてまいりましたが、私が持っておりますExpress Editionでは
できない機能のようでございますね^^;
有償版を今から購入してまいります。よい機会でございます^^
まだインストーラを作成したことがございませんゆえ、
作ってみるのが楽しみでございます^^
この度はご親切にアドバイスいただき誠にありがとうございました!!!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) outlook マクロが終了しません。 1 2022/09/02 11:14
- Excel(エクセル) VBA フォルダ見える化のコードについて 2 2023/06/19 15:04
- デスクトップパソコン フォルダ内のファイル移動が出来ません 3 2022/10/16 05:42
- Visual Basic(VBA) VBA★PDFをPDFアプリで印刷しようと思っていますが上手くゆきません 1 2022/06/06 22:04
- Visual Basic(VBA) VBA This Workbookモジュールを別ファイルにコピーする方法 1 2022/09/14 01:51
- Excel(エクセル) 【マクロ】フォルダAからダBへファイルを、ファイルの更新日時の条件で、1つづつ移動するには? 3 2022/08/25 09:56
- Visual Basic(VBA) VBAが止まります。 2 2022/09/02 14:02
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/15 15:48
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/08/09 10:33
- Windows 10 explorerをedgeで開く方法 2 2022/06/05 14:59
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ManagementClassが見つからない。
-
C#ソースをCSCファイルにてコン...
-
意味不明の実行時エラーで困っ...
-
オブジェクト(dll)のレジストリ...
-
VB6.0で作成したプロジェクトの...
-
VBAの参照設定について
-
VB.NETでDLLを読み込ませる時に...
-
VBAからDLLをCALLしたいのですが
-
Using System.Drawing がうまく...
-
DLLを作成してVBAから使用する...
-
ビルドが実行できない 先へ進...
-
VB.NETで参照設定したDLLの修正...
-
EXCEL2000でVBAでWinsockをしたい
-
msvcr120d.dllがないというエラー
-
Visual Studio 「AnyCpu」について
-
Windows PowerShellでC言語を実...
-
VBAでArrayListを使う為の「msc...
-
Designer.vbは直接コードをいじ...
-
VBSで起動したアプリが前面表示...
-
VB6で作成したアプリを配布する...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
意味不明の実行時エラーで困っ...
-
ManagementClassが見つからない。
-
VB.NETでDLLを読み込ませる時に...
-
VB.NETで参照設定したDLLの修正...
-
VB.Net リビルド 意味不明なメ...
-
VB2010で作成したdllからtlbが...
-
C#ソースをCSCファイルにてコン...
-
オブジェクト(dll)のレジストリ...
-
IT初心者です 仕事で、vb.netで...
-
Using System.Drawing がうまく...
-
VB2008→VB2010でエラーが出てま...
-
VBAの参照設定について
-
DLLを作成してVBAから使用する...
-
ビルドが実行できない 先へ進...
-
MS Visual Studio 6.0のEnterpr...
-
Windows10のVBAでDirectX 8が使...
-
VB6.0で作成したプロジェクトの...
-
Excel-VBAでDSOFile.dll使える?
-
ActiveMovie Control Objectを...
-
EXCEL2000でVBAでWinsockをしたい
おすすめ情報