Ⅰ 请教用Inno Setup制作的安装包密码怎么破解
临时使用的文件要使用 noencryption 属性,标记该文件不加密,请查看相关帮助!
Ⅱ 用inno setup 打包安装程序的问题
第一,你可以添加文件夹,将整个 12 文件夹添加进去而不是添加 12 中的文件。
第二,你将安装程序脚本稍作修改,例如:
Source: "C:\123\12\*"; DestDir: "{app}";
改为:
Source: "C:\123\12\*"; DestDir: "{app}\12";
我就不信还能装到安装文件夹。
Ⅲ inno setup做打包 如何做隐藏安装
看一下你的快捷方式所连接的地址是不是正确的.
可以点右键>>>属性>>地址>>\.....\INNO.EXE
看一下前面的地址是不是你安装的地方.
另外一个方法就是在 :所在目录可以运行的那个INNO.EXE上
点右键>>>在桌面建立快捷方式,
然后运行这个快捷方式就可以了.
Good Luck !!
(其实操作起来很简单的事情,用文字说明白还真的不容易.)
LZ 给加点分把!! :)
Ⅳ inno setup能不能把安装到各个盘文件夹/文件加密
这个我不清楚。
给文件夹、文件加密,我使用的是文件夹加密超级大师。
文件夹加密超级大师支持所有windows系统,可以加密文件夹,加密文件,保护磁盘和数据粉碎,使用起来非常方便。
在需要加密的文件和文件夹上单击鼠标右键选择加密就可以了。
解密时只要双击加密的文件夹和文件,输入正确的密码就可以解密。
文件夹加密超级大师加密后的文件和文件夹可以防止删除、复制和移动。
相对于其他的文件夹加密软件和文件加密软件,功能和性能还有操作都更加的出色。
并且有微软、360和金山的安全认证,是一款绝对安全的文件夹加密软件。
您可以到网络上下载文件夹加密超级大师来给您的文件和文件夹加密,看看使用效果怎么样?
Ⅳ 用inno setup或者其他软件打包exe程序 怎么防止重复安装的问题
inno setup
写不写注册表要看应用程序,应用程序用不到注册表的话就不用写。
你要求的用inno setup不太好做。
推荐用tiger installer,再安装有提示修复或者卸载选项。
Ⅵ inno setup打包的时候最后想强制执行三个.bat文件,现在是默认打上这三个钩,但是现在不想让别人修改
你好,只能去掉让用户勾选的这个功能。改为软件安装完成后,直接运行这三个bat。
相关代码:
[Run]
Filename: "{app}\123.bat"; Flags: nowait skipifsilent
Filename: "{app}\456.bat"; Flags: nowait skipifsilent
Filename: "{app}\789.bat"; Flags: nowait skipifsilent
Ⅶ Inno Setup 编译器”如何打包 javaWeb 应用程序,自动设置环境变量
三、打包步骤
1、打开Inno Setup编译器,新建脚本向导,填写程序的基本信息,如图:
2、点击下一步,选择文件类型与名称;
3、点击下一步,勾取“”应用程序没有主执行文件,并添加文件夹,如上面提到的D:webexe,并把子文件夹中的文件包含在内
4、点击下一步,选取程序图标设置;
5、点击下一步,指定安装前后显示的文件信息和许可文件;
6、点击下一步,选择安装语言;
7、点击下一步,选择编译器输出的路径和exe安装包的名称等,如图:
8、点击下一步,编译脚本即完成。
打开
Ⅷ inno setup打包工具的使用问题
通过powshell脚本或.bat实现xx.mdb创建。再通过inno Setup 调用.bat文件。注意powershell运行的位数(32位或64位)。通过inno Setup中Flags:32bit或Flags:64bit控制
Ⅸ 如何用inno setup打包activex
需要解决三个问题,运行环境检测与安装,按顺序执行安装,activex注册。
运行环境检测与安装
最开始的方法,网络之后,根据网上的搜索的结果,使用了
RegQueryDWordValue(HKLM, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{9A25302D-30C0-39D9-BD6F-21E6EC160475}', 'Version', version),最后的结果,我发现,跟我想的不一样,没有判断到是否已经安装了vc++9的环境,每次安装都会重复安装,最后,我发现,Uninstall中的GUID是不固定的,在不同的机器上面,安装之后,它会改变,原因不知。只好bings和google,
最后看了
http://blogs.msdn.com/b/astebner/archive/2010/10/20/10078468.aspx里面的How to detect the install state for the Visual C++ 2010 redistributable packages等文章,决定使用作者的办法。那就是调用msi.dll里面MsiQueryProctState函数。
我又在在传入值上面,又思考了半天,因为我用了作者提供的GUID号,返回值均为-2,而我的确已经安装了此产品了,我想可能是因为作者提供的产品GUID都与我手头上打包的x86.exe或者是x64.exe里面的产品GUID不一样,怎么看到这两个产品的GUID了,本人笨的很,只好装了一个wix的打包工具,解压缩这两个exe,然后,再看它们的wix格式的文件,最后在第一行看到了产品的GUID,跟作者提供的不一样,跟网上的那个GUID号也不一样。
静默安装
我在上面的文章里面看到了参数,不会用,最后查看了Exec的使用方法,才明白了,应该怎么写。
按顺序执行安装
开始写的是Files里面,自动注册activex,但结果经常会,运行环境还没有安装,就注册activex了,往往注册不成。
改为不让dll自动注册了,在安装完成之前,使用
RegisterServer(Is64BitInstallMode, ExpandConstant('{app}\SISSWebUKey.dll'), False);来进行注册。
整个安装打包文件如下
#define MyAppName "安全登录 for IE (64)"
#define MyAppVersion "2.0.0.1"
#define MyAppPublisher "公司名"
#define MyAppURL "www.demo.com"
#define MyAppExeName "test.dll"
[Setup]
; 注: AppId的值为单独标识该应用程序。
; 不要为其他安装程序使用相同的AppId值。
; (生成新的GUID,点击 工具|在IDE中生成GUID。)
AppId={{CBA6F794-BD25-45A2-9A91-8F11C3A2E3BA}
AppName={#MyAppName}
AppVersion={#MyAppVersion}
;AppVerName={#MyAppName} {#MyAppVersion}
AppPublisher={#MyAppPublisher}
AppPublisherURL={#MyAppURL}
AppSupportURL={#MyAppURL}
AppUpdatesURL={#MyAppURL}
DefaultDirName={pf}\{#MyAppName}
DisableDirPage=yes
DefaultGroupName={#MyAppName}
DisableProgramGroupPage=yes
OutputDir=D:\work2013\projectInstallFile
OutputBaseFilename=SISSUKeySetup64
Compression=lzma
SolidCompression=yes
=x64
PrivilegesRequired=admin
[code]
#IFDEF UNICODE
#DEFINE AW "W"
#ELSE
#DEFINE AW "A"
#ENDIF
function MsiQueryProctState(ProctCode: string): integer;
external 'MsiQueryProctState{#AW}@msi.dll stdcall';
function MsiConfigureProct(ProctCode: string;
iInstallLevel: integer; eInstallState: integer): integer;
external 'MsiConfigureProct{#AW}@msi.dll stdcall';
var
HasRun:HWND;
var vc9SP1Missing: Boolean;
function InitializeSetup: Boolean;
var Path:string ;
ResultCode: Integer;
var
IniFile, OldString, NewString: string;
IniFileLines: TArrayOfString;
i: Integer;
currentIndex: Boolean;
var version: Cardinal;
begin
Result := true;
HasRun := FindWindowByClassName('IEFrame');
while HasRun<>0 do
begin
if MsgBox('安装程序检测到IE浏览器正在运行。' #13#13 '您必须先关闭它然后单击“是”继续安装,或按“否”退出!', mbConfirmation, MB_YESNO) = idNO then
begin
Result := false;
HasRun := 0;
end
else
begin
Result := true;
HasRun := FindWindowByClassName('IEFrame');
end;
end;
//这里的GUID号需要自己查看下载的vcredist_x64.exe是否是此GUID
if MsiQueryProctState('{DA5E371C-6333-3D8A-93A4-6FD5B20BCC6E}') <> 5 then begin
vc9SP1Missing := true;
end;
end;
procere CurStepChanged(CurStep: TSetupStep);
var
pt,IniFile, OldString, NewString: string;
IniFileLines: TArrayOfString;
ResultCode,i: Integer;
currentIndex: Boolean;
begin
if (CurStep=ssPostInstall) then
begin
if(vc9SP1Missing=true) then
begin
pt:= ExpandConstant('{tmp}\vcredist_x64.exe');//需要考虑返回值 0 ,是安装成功不需要重启 3010安装成功需要重启电脑 其它的是安装失败
if( not Exec(pt,'/passive /norestart"','',SW_HIDE,ewWaitUntilTerminated,ResultCode)) then
begin
MsgBox('C++运行环境安装失败,请手动安装!没有此控件,安全控件无法安装成功!', mbInformation, MB_OK);
end;
end;
end;
if(CurStep=ssDone) then
begin
RegisterServer(Is64BitInstallMode, ExpandConstant('{app}\test.dll'), False);
end;
end;
function NeedInstallVC9SP1(): Boolean;
begin
Result := vc9SP1Missing;
end;
function InitializeUninstall(): Boolean;
var
HasRun : Integer;
begin
Result := true;
HasRun := FindWindowByClassName('IEFrame');
while HasRun<>0 do
begin
if MsgBox('安装程序检测到IE浏览器正在运行。' #13#13 '您必须先关闭它然后单击“是”继续安装,或按“否”退出!', mbConfirmation, MB_YESNO) = idNO then
begin
Result := false;
HasRun := 0;
end
else
begin
Result := true;
HasRun := FindWindowByClassName('IEFrame');
end;
end;
end;
[Languages]
Name: "chinesesimp"; MessagesFile: "compiler:Default.isl"
[Files]
Source: "D:\work2013\projectOldKey64\NeedLib\vcredist_x64.exe"; DestDir: "{tmp}"; Check: NeedInstallVC9SP1
Source: "D:\work2013\projectOldKey64\SISSWebUKey\SISSWebUKey\Release\test.dll"; DestDir: "{app}"; Flags: promptifolder restartreplace
; 注意: 不要在任何共享系统文件上使用“Flags: ignoreversion”
[UninstallRun]
Filename: "regsvr32"; Parameters:"{app}\test.dll /u /s "
[UninstallDelete]
Type: files; Name:"{app}\test.dll"