WinForm需要创建快捷方式,方法网上的代码很多,就不说的。
现在的问题是,在英文的系统下,如果快捷方式指向的targetpath包含中文,快捷方式就不能正确创建。请问有什么方法可以解决?

解决方案 »

  1.   

    这种问题一般是避开。能不用中文就不用中文。
    你可以试试把字符串encode下试试。(我没试过呵呵)
      

  2.   


    用户非得用中文路径,我们也没办法。
    encode试过了,出来之后是问号。
      

  3.   

    这个问题其实解决起来很简单,在英文操作系统里他指向的targetpath包含中文,用代码创建中文路径的快捷方式肯定会显示出乱码的,这个问题不是你代码的原因,而是他系统环境的原因,因为英文操作系统默认的system language是不支持中文的,他只要修改他本机的系统语言就可以了,如果不修改想他在装其他的中文版的软件也会出现乱码情况具体修改方法如下 :1,Control Panel\Clock, Language, and Region\Change display language\Formats table\current fomart 下选Chinese
    (simplified
    ,PRC)
    2,Control Panel\Clock, Language, and Region\Change display language\Location table\current location下选China
    (simplified
    ,PRC)3,Control Panel\Clock, Language, and Region\Change display language\Administrative table\Change sysytem location\在弹出的对话框中选China
    (simplified
    ,PRC)修改后重启电脑,问题 就会解决
      

  4.   

    其他程序创建你是指写code的方式吗? 还是用install shield或windows自带的create shortcut
      

  5.   


    应该是install shield。就一般的程序安装完后在桌面间隔快捷方式之类的。
      

  6.   


    windows自带的发送到桌面那个也可以啊。
      

  7.   

    install shield是用脚本,windows create shortcut应该是直接操作的注册表,和你用的api coding是不一样的 
      

  8.   


    您知道install shield用的什么脚本么?我想如果有办法给目标文件发一个“创建快捷方式”的命令也不错。