0

假设我有一个指向名为“BLABLA”的文件夹的网络链接,目标路径是“\\servername\temp”

如何获取目标路径的字符串?我试过了:

Set oShell = CreateObject("WScript.Shell")
Const NET_HOOD = &H13&
Set oShApp = CreateObject("Shell.Application")
sNetHood = oShApp.NameSpace(NET_HOOD).Self.Path
Set oShortCut = oShell.CreateShortcut(sNetHood & "\" & "BLABLA" & ".lnk")

MsgBox "> " & oShortCut.TargetPath

它做所有事情,甚至创建一个没有任何错误的 oShortCut 对象。但是,它不会返回

oShortCut.TargetPath

我究竟做错了什么?

我希望它返回:“\\servername\temp\BLABLA”
提前感谢您的任何建议!

我在win 7下创建了快捷方式,在资源管理器的计算机视图中右键单击,然后>添加网络位置>下一步...等。它创建了一个文件夹,表示NetHood中的快捷方式到服务器上的路径...它就像一个映射的共享,但不是真的。

4

1 回答 1

-1

thx 的输入...经过多年阅读自己的研究,然后再次检查谷歌,我发现了我写到 vbs 中的 ac# 代码,然后简化只是看到我最后必须改变的就是添加这个:

.GetLink

所以我的问题的解决方案是:

Const NET_HOOD = &H13&
Set oShell = CreateObject("Shell.Application")
Set oFolder = oShell.NameSpace(NET_HOOD)

For Each oFile In oFolder.Items
    MsgBox oFile.GetLink.Path
Next
于 2013-07-24T13:42:55.063 回答