在InstallShield中执行带空格路径的的exe

来源:互联网 发布:阿里云rds价格 编辑:程序博客网 时间:2024/05/02 00:20

今天注册2个C#dll, 始终注册不成功。手工执行写好的cmd, 是成功的.

经过实验验证,是由于在带空格的路径中执行引起的.

 

解决方法有2种:

1. 使用函数转换成短路径名, LongPathToShortPath(STRING).

2. 在appAndwait的参数用""围起来.

 

稍后整理.

 

<2010_1227>

注册控件时也发现这一问题,如果不采用LongPathToShortPath(), 调用Regsvr32.exe 不带 /s 参数时,  可以看到路径名称 ' '被截断,

if(LaunchApplication() < 0)这句根本没用, 不能用来判断是否注册成功了. 看来还要调用自己写的注册控件的Dll.

 

原创粉丝点击