这是启动参数的问题!把任何东西拖动到某个可执行程序上,系统就会运行该程序,而且会在该程序后面跟着一串启动参数,该启动参数就是你所拖动的文件的路径例如你把一个C:\Test.txt拖往你的某个程序 则这个程序启动的时候就附加了参数"C:\Test.txt",如果用Shell函数运行程序,就是:Shell "x:\xxx\xx.exe C:\Test.txt" 至于在程序里截取启动参数,使用Command函数:Option ExplicitSub Main() Dim strCmdLine As String strCmdLine = Command$ MsgBox strCmdLine End Sub 编译上面的代码,然后拖一个文件到你的程序图标,看一下提示框中是不是你所拖动的文件。
则这个程序启动的时候就附加了参数"C:\Test.txt",如果用Shell函数运行程序,就是:Shell "x:\xxx\xx.exe C:\Test.txt"
至于在程序里截取启动参数,使用Command函数:Option ExplicitSub Main()
Dim strCmdLine As String
strCmdLine = Command$
MsgBox strCmdLine
End Sub
编译上面的代码,然后拖一个文件到你的程序图标,看一下提示框中是不是你所拖动的文件。