ronin 发表于 2008-6-2 09:18:52

创建快捷方式遇到的问题

FileCreateShortcut ( "C:\WINDOWS\system32\rundll32.exe C:\WINDOWS\system32\muweb.dll,LaunchMUSite", @StartMenuCommonDir & "\Microsoft Update.lnk", "", "", "Microsoft Update")

看代码应该没什么问题,但出来的总是出错,就是目标文件总是多了"C:\WINDOWS\system32\rundll32.exe C:\WINDOWS\system32\muweb.dll,LaunchMUSite", 正确出来的目标文件应该是C:\WINDOWS\system32\rundll32.exe C:\WINDOWS\system32\muweb.dll,LaunchMUSite才行
请问如何处理

[ 本帖最后由 ronin 于 2008-6-3 11:48 编辑 ]

jhwl 发表于 2008-6-2 14:06:03

其实,有时不支持长文件名, 显示为非 8.3 文件名产生的短名称,再测试一下,DOS经常会有这样的问题.楼主快捷方式的文件名是不是过长?

jhwl 发表于 2008-6-2 15:50:46

经测试,生成出来的快捷方式多了一对双引号,这是因为你的路径里面含有空格,就好比在windows命令提示符下,若想进入D:\program files目录 必须键入 cd "D:\program files" 双引号括起来的内容为字符串...

分析原因:
我们首先要执行C:\WINDOWS\system32\rundll32.exe,后面属于参数部分...
看代码:FileCreateShortcut (@SystemDir&"\rundll32.exe", @StartMenuCommonDir & "\Microsoft Update.lnk", "C:\WINDOWS\system32", "C:\WINDOWS\system32\muweb.dll,LaunchMUSite", "Microsoft Update",@SystemDir&"\muweb.dll")

如果问题已解决,请注明!

[ 本帖最后由 jhwl 于 2008-6-2 16:11 编辑 ]

bing614 发表于 2008-6-2 16:15:58

FileCreateShortcut (@SystemDir & '\rundll32.exe', @StartMenuCommonDir & "\Microsoft Update.lnk", "", "C:\WINDOWS\system32\muweb.dll,LaunchMUSite", "Microsoft Update")
FileCreateShortcut ( "目标文件", "lnk文件" [, "工作目录" [, "参数" [, "描述" [, "图标文件" [, "快捷键" [, 图标编号 [, 状态]]]]]]] )

bing614 发表于 2008-6-2 16:17:33

楼上的楼上好快,呵呵,差几秒.:face (33):

jhwl 发表于 2008-6-2 16:24:34

呵呵,早回发了,咋一看不顺眼,改了图标文件...看起来像那么回事,楼主可能是做封装系统的,遇到这样的问题,大家一起解决...:face (29):

ronin 发表于 2008-6-3 11:48:01

谢谢 jhwl 和bing614 ,问题已经解决
这个是封装系统使用的

破帽遮颜 发表于 2008-6-3 18:53:22

不错不错!多来提问区其实还蛮多东西可以学习的!
页: [1]
查看完整版本: 创建快捷方式遇到的问题