VB6 用鼠标右键单击时获取文件夹路径

VB6 Get Folder Path when Right-Clicking with the mouse

我创建了一个非常小的项目,包括获取目录的路径。为此,我在表单中添加了一个文本框,它将显示目录的收集路径。

编译后放在:C:.然后我将它添加到鼠标右键菜单中。但是我的问题来了。我的目标是让我的应用程序在我右键单击时收集文件夹的路径,并 运行 我的应用程序在我右键单击它时选择的任何文件夹中。例如:我的文档、桌面等。但是我的应用程序总是获取我放置它的路径,在这种情况下:C:.

我手动尝试过,但我不想这样做。 在此示例中,我必须先 运行 我的项目,然后将文件从该文件夹拖放到文本框中。

Private Sub Command1_Click()
   Dim strFullFilePath As String
   strFullFilePath = Text1.Text
   Dim fso
   Set fso = CreateObject("Scripting.FileSystemObject")
   Text2 = fso.GetParentFolderName(strFullFilePath)
End Sub

Private Sub Text1_OLEDragDrop(Data As DataObject, Effect As Long, Button As Integer, Shift As Integer, X As Single, Y As Single)
   Text1 = Data.Files(1)
End Sub

我将不胜感激任何建议。我在网站上搜索了与我相同的问题,但没有找到。

提前致谢 此致

更改程序的注册,在末尾添加“%V”

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\Background\shell\Project\command] @="C:\Project.exe" "%V"

Explorer 然后会在命令行上将目录传递给您。您可以使用 VB.

中的 Command() 函数读取命令行参数
Private Sub Command1_Click()
   Dim strFullFilePath As String
   strFullFilePath = Text1.Text
   Text2 = Command()
End Sub