我正在尝试使用32位应用程序从64位计算机上的快捷方式(.lnk)文件访问目标路径。为了获得路径,我使用了以下代码。
WshShell shell = new WshShell();
IWshShortcut link = (IWshShortcut)shell.CreateShortcut(flexShortcut);
FLEXEXE = link.TargetPath;
这会返回路径C:\Program Files (X86)\..
而不是C:\Program Files\..
有没有解决这个问题?
答案 0 :(得分:0)
这是Windows中的一般问题。尝试使用32位编辑器编辑System32文件夹(例如applicationHost.config)中的文件。您将从SysWOW64文件夹编辑文件而不是......这不仅仅是奇怪的......
答案 1 :(得分:0)
要使用的技巧是
答案 2 :(得分:0)
对于仍然存在此问题的任何人,我发现将Platform Target设置为“ Any CPU”并取消选中“ Prefer 32-bit”选项对我来说已经解决了。这样,您的应用程序将保持与两种体系结构兼容的灵活性,并且仍然正确返回快捷链接TargetPath(x86 / x64)。