Sur*_*rge 6 windows dll inno-setup
我正在使用Inno安装程序为我的VB.net应用程序安装补丁更新,我必须替换DLL文件和几个javascript/html文件进行更新.但是,DLL没有得到更新(它在C:\ program files ...中) - 即使在没有UAC的XP系统上它也没有被替换,但是当我手动删除DLL并重新运行补丁时,文件被复制.它不是只读的,并且XP案例中不涉及UAC/admin权限.
如果文件已经存在,那么文件不会被复制的原因是什么?它内置于VS2008和.NET 2.0中 - 新的DLL也具有更新的日期和大小差异.
有没有办法解决Vista/Win7/8上的UAC写访问问题?我想补丁永远不会成功用UAC替换这些系统上的文件.告诉我们的用户群将其关闭显然不是一种选择.
[编辑]通过在构建解决方案时从Release文件夹中提取dll程序集,将dll程序集打包到Visual Studio中的setup.exe中.inno setup iss [File]部分包含:
[Files]
Source: C:\Visual Studio 2005\Projects\Setup5\Setup5\Debug\setup.exe; DestDir: {app}
Source: C:\Visual Studio 2005\Projects\Setup5\Setup5\Debug\interact.msi; DestDir: {app}
[Run]
Filename: {app}\setup.exe; Flags: runmaximized
Run Code Online (Sandbox Code Playgroud)
DLL是否有版本资源?新DLL是否比旧版本更高?默认情况下,InnoSetup使用版本资源来确定是否应替换文件.
另一个选项是您可以ignoreversion在该[Files]部分中添加标志以始终替换该文件.
| 归档时间: |
|
| 查看次数: |
3333 次 |
| 最近记录: |