• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:EXPLORERで開いているフォルダがどこかを知りたいです VB.NET)

VB.NETでEXPLORERで開いているフォルダのパスを取得する方法

このQ&Aのポイント
  • VB.NETでEXPLORERで開いているフォルダのパスを取得する方法について調査しています。
  • 現在のプロセスを取得し、EXPLORERプロセスを特定する方法を試しているが、不具合がある。
  • APIのFindWindowを使ってウィンドウを探す方法も検討しているが、ボリューム名の問題がある。

質問者が選んだベストアンサー

  • ベストアンサー
  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.1

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 といった具合で取得できますよ

goo081102
質問者

お礼

redfox63様いつもご回答をありがとうございます。 今回もこの方法で完璧でした。 便利な手法を教えて頂きましてありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • エクスプローラの開いているフォルダがわかりづらい

    Windows7に換えてからエクスプローラの開いているフォルダがどれなのか わかりにくくなっています。 左側でフォルダを選んで、右側のファイルを選んだ場合、XPのときは、 左側の開いているフォルダ名の背景色が薄い茶色だったはずですが、 Windows7(Vistaも同様)に換えてから何となく色が付いているような感じで わかりづらいです。 上のアドレスを見ればわかるのですが。。。 もし設定方法があれば、 ・フォルダ名の背景色の設定方法 または、 ・フォルダアイコンの設定方法 を教えてください。

  • エクスプローラのフォルダを別ウィンドウで開く

    winndows2000のエクスプローラのオプションで「別のプロセスでフォルダウインドウを開く」を選択しておくいて、右ペインで表示されているフォルダをダブルクリックすると、始めは別のエクスプローラウィンドウで開くのですが、その新しく開いたエクスプローラでは同様の事をしても同じエクスプローラで表示されます。動作が統一されていないと動作が予想通りにならず使いにくいです。 理想的には見たいフォルダを別のエクスプローラで開いたり、同じエクスプローラで表示したり使い分けたいのですが、良い方法はあるでしょうか?

  • VB.NETでCreateProcess

    VB.NET(2003)で、別exeを起動し、終了まで待機するということをするために、 system.Diagnostics.Processクラスを使用していました。 しかし、実際に動かす環境がMetaFrameなのですが、 その環境では、このクラスは使用できないようで画面の起動すらできなくなります。 ですので、別の方法ということで、APIのCreateProcess、WaitForSingleObjectを使用するように変更したいのですが、 VB.NETでのサンプルが余り無いため、パラメータにどのように設定するかなどがよくわかりません。 API自体使ったことが無いので、根本的にわから無すぎるのです・・・ VB.NETでAPI利用サンプルが多く掲載されているサイト、 できれば、CreateProcess、WaitForSingleObjectを使用しているサンプルなどありましたら、ご教授願います。 よろしくお願いいたします。

  • ツリービューを使って、エクスプローラのようなものを作りたい。

    タイトルの通りです。VBで、Windowsのエクスプローラのような物を作り、それでファイルを選択したいのですがその作り方が分かりません。 任意の場所から、その最下層までのファイル名やフォルダ名を取得し、それをツリービューに表示させてエクスプローラのようなものを作りたいのです。 どなたか分かる方がおりましたら、お教えください。

  • 指定のフォルダをエクスプローラーで開く

    解る方、教えて下さい。 リンクでなく、INPUT TYPE=SUBMIT ボタンにて 指定のフォルダを新しい別ウィンドウにてエクスプローラーにて開く方法(VBスクリプトにて)を教えて下さい。 (例) DIM FOLDERNAME If Request.Form("FOLDERINQ") <> "" Then FOLDERNAME = "\\サーバー名\フォルダー名" 'エクスプローラーを開く (ここにどう書くのかが解りません。) END IF 宜しくお願い致します。

  • VB2010 ウィンドウタイトルを取得

    こんにちはVB学習を始めて2週間になりました。 Webの記事などを参考にしていますがバージョンによって記述が変わって苦戦しています。 今回ご質問したい内容です。 ボタンを押すとメモ帳が起動されているか調べてそのウィンドウタイトルを得る ウィンドウタイトルで検索してハンドルを取得してそのままそのハンドルで逆に ウィンドウタイトルを得ています(無意味な処理ですが学習用という事で) Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Integer Private Declare Function GetWindowText Lib "user32.dll" Alias "GetWindowTextA" (ByVal hWnd As Integer, ByVal lpString As String, ByVal nMaxCount As Integer) As Integer Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim ECHandle As Integer Dim Titlename As String Titlename = vbNullString ECHandle = FindWindow(vbNullString, "無題 - メモ帳") GetWindowText(ECHandle, Titlename, 255) Label5.Text = Titlename If ECHandle = 0 Then Label4.Text = "取得できない" Else Label4.Text = "取得出来た" & ECHandle & Titlename End If End Sub 結果はというと Titlename が空っぽのままでタイトルが取得できません どのような原因が考えられますでしょうか? よろしくお願いいたします。

  • Process.Startで起動したアプリを最大化したいです。VB.NET

    こんにちは、お世話になっております。 下記のようなコードでアプリケーションを起動して ウィンドウを最大化したいのですが、 どのようにしたら良いでしょうか。 3行目のように大きさを画面いっぱいに設定する方法は 出来たのですが、最大化の方法がわかりません。 申し訳ありませんが、教えて頂きたくお願いいたします。 Dim p As System.Diagnostics.Process p = System.Diagnostics.Process.Start("***") MoveWindow(p.MainWindowHandle, 0, 0, 1024, 768, 1)

  • VBで実行中のEXEファイルの情報を取得したい

    WindowsXPでVB6.0でプログラムを組んでますが、その中であるEXEファイルを起動するようにしています。しかし、そのEXEが起動している場合は二重起動を避けるようにしたいのです。 使っているPCで起動されているいくつかのEXEから目的のEXEが起動しているかどうかを知りたいです。 FindWindowを使うには開いているファイル名まで変数の中に渡さなければならないため使えません。(開いているファイル名は不明として下さい) タスクマネージャーの「プロセス」タブのイメージ名に出てくるexeファイル名を取得できればいいのですが、方法をご存知の方おられませんか?

  • エクスプローラでフォルダを開いた際に最前面にしない

    Windows 10で、ソフトによっては処理後にフォルダを開くのですが、 この際に開いたフォルダが最前面に来てしまいます。 Windowsのエクスプローラがフォルダを開くと自動で最前面に開く設定なのかと思うのですが、 最前面にしない方法があれば教えてください。

  • エクスプローラのフォルダー内のファイル名をテキスト出力

    Windowsを起動後、右クリックしてエクスプローラを立ち上げ、開いたフォルダー内のファイル名をテキストで出力する方法をご存知の方がおられたら、教えて下さい。 宜しくお願いします。