怎么将Delphi程序打包成安装程序

jacksonnewton 2010-06-22 04:47:01
前两周专周做了一个图书馆里系统,后台是SQL2000做的,前台用DELPHI的由于自己之前没有学过DELPHI临时看了些资料
终于把前台搞好了,现在我想把他弄成安装程序,我知道用Delphi自带的那个InstallShield可以搞定,但都是英文真是一头雾水,怎样才能把后台的数据库一起打包,在别人电脑安装下就可以用,不用那么麻烦还要去弄后代?有哪位高手解答下,不甚感激!
...全文
1143 22 打赏 收藏 转发到动态 举报
写回复
用AI写文章
22 条回复
切换为时间正序
请发表友善的回复…
发表回复
billow2yuer 2010-07-15
  • 打赏
  • 举报
回复
好贴 哈哈哈哈哈哈哈哈哈哈哈
lyhoo163 2010-07-06
  • 打赏
  • 举报
回复
Inno SetUp,比较好用,自带范例。

Q287413288 2010-07-05
  • 打赏
  • 举报
回复
NSIS
sanguomi 2010-07-05
  • 打赏
  • 举报
回复
用Inno 就可以了
alanhao 2010-07-05
  • 打赏
  • 举报
回复
delphi编译出来的程序是绿色软件,不用安装运行环境。。。。
Annaro 2010-07-04
  • 打赏
  • 举报
回复
支持绿色软件,哈哈
starluck 2010-06-29
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 harryfin 的回复:]
引用 9 楼 harryfin 的回复:

又没人用过InstallAnywhere呢?听说比inno强大很多

又没人 -> 有没人
[/Quote]

我一般用:insatllshield 呵呵
酣酣 2010-06-29
  • 打赏
  • 举报
回复
肥猫也行的!
huangheguyun 2010-06-29
  • 打赏
  • 举报
回复
Inno SetUp 网上下载,有说明的
sghff110 2010-06-29
  • 打赏
  • 举报
回复
若嫌英文界面麻烦,可用Tiger installer(老虎安装器),简洁易懂。
ruanjian2110 2010-06-28
  • 打赏
  • 举报
回复
SetupFactory7.0杀毒软件报毒
Harryfin 2010-06-23
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 harryfin 的回复:]

又没人用过InstallAnywhere呢?听说比inno强大很多
[/Quote]
又没人 -> 有没人
renxucai 2010-06-23
  • 打赏
  • 举报
回复
我一直用insatllshield 10.5
Harryfin 2010-06-23
  • 打赏
  • 举报
回复
又没人用过InstallAnywhere呢?听说比inno强大很多
vincent_cheung 2010-06-23
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 grace_zou 的回复:]
安装制作SetupFactory7.0很好用
[/Quote]
推荐
haochin 2010-06-22
  • 打赏
  • 举报
回复
打包时使用inno setup,
楼主如果想要在安装软件时后台数据库服务(如sql server)一同安装,可以考虑使用msde来做为你的数据库引擎(msde,并发5个,单库最大2g),也可以考虑用网上流传的绿色sql 2k
步骤是这样子的:
1,到ms下载msde。40m的样子,解压缩,将里面的setup.ini配置好。
2,将配好的msde整个目录一并打包到你的安装文件中,(有些大啊,至少都有40m了。呵呵。)
将你的sql server数据库文件分离出来,也一并打包到安装文件中。
3,安装程序在copy完文件后,运行msde安装程序(这一步是写在inno setup的脚本里的,msde安装程序会按你事先设定好的setup.ini文件来安装)
4,安装完msde后,自动运行msde数据库服务。
5,写一个附加数据库的小软件,用来将你的数据库附加到msde数据库引擎上。(msde其实就是sql server)
6.安装完成,运行你的软件吧。。
具体见下面的inno setup 脚本:
; 脚本用 Inno Setup 脚本向导生成。
; 查阅文档获取创建 INNO SETUP 脚本文件详细资料!

[Setup]
AppName=JETT Hrms
AppVerName=JETT Hrms V1.0
AppPublisher=深圳市捷得科技有限公司
AppPublisherURL=http://www.jditt.com
AppSupportURL=http://www.jditt.com
AppUpdatesURL=http://www.jditt.com
DefaultDirName={pf}\JETT Hrms
DefaultGroupName=JETT Hrms
AllowNoIcons=yes
LicenseFile=D:\JETTHRMS\CopyRight.txt
OutputDir=D:\
OutputBaseFilename=JETT_Hrms_Setup_S
SetupIconFile=D:\JETTHRMS\ICO.ico
Compression=lzma
SolidCompression=yes

[Languages]
Name: "eng"; MessagesFile: "compiler:Default.isl"
;Name: "eng"; MessagesFile: "compiler:Languages\English.isl"

[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked
Name: "quicklaunchicon"; Description: "{cm:CreateQuickLaunchIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked
Name: yes; Description: 是; GroupDescription: 是否安装数据库服务?约需1-5分钟。如果您已有SQL Server,则无需安装。; Flags: exclusive
Name: no; Description: 否; GroupDescription: 是否安装数据库服务?约需1-5分钟。如果您已有SQL Server,则无需安装。; Flags: exclusive unchecked

[Files]
Source: "JTHRP.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "DataLink.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "JTHRP.ini"; DestDir: "{app}"; Flags: ignoreversion
Source: "Main.jpg"; DestDir: "{app}"; Flags: ignoreversion
Source: "Maina.jpg"; DestDir: "{app}"; Flags: ignoreversion
Source: "JTHRP\*"; DestDir: "{app}\JTHRP"; Flags: ignoreversion recursesubdirs createallsubdirs
Source: "Photos\photo.jpg"; DestDir: "{app}\Photos"; Flags: ignoreversion recursesubdirs createallsubdirs
Source: "TempDB\*"; DestDir: "{app}\TempDB"; Flags: ignoreversion recursesubdirs createallsubdirs
;安装MSDE及query
Source: "D:\公司软件\SQL\MSDE\MSDE\*"; DestDir: "{app}\MSDE"; Flags: ignoreversion recursesubdirs createallsubdirs
Source: "D:\公司软件\SQL\MSDE\Query\*"; DestDir: "{app}\Query"; Flags: ignoreversion recursesubdirs createallsubdirs
;安装指纹机控件
Source: "D:\我的工程\JETTHrms\FPTdll\commpro.dll"; DestDir: "{sys}"; Flags: ignoreversion
Source: "D:\我的工程\JETTHrms\FPTdll\comms.dll"; DestDir: "{sys}"; Flags: ignoreversion
Source: "D:\我的工程\JETTHrms\FPTdll\plce.dll"; DestDir: "{sys}"; Flags: ignoreversion
Source: "D:\我的工程\JETTHrms\FPTdll\rscagent.dll"; DestDir: "{sys}"; Flags: ignoreversion
Source: "D:\我的工程\JETTHrms\FPTdll\rscomm.dll"; DestDir: "{sys}"; Flags: ignoreversion
Source: "D:\我的工程\JETTHrms\FPTdll\tcpcomm.dll"; DestDir: "{sys}"; Flags: ignoreversion
Source: "D:\我的工程\JETTHrms\FPTdll\usbcomm.dll"; DestDir: "{sys}"; Flags: ignoreversion
Source: "D:\我的工程\JETTHrms\FPTdll\zkemsdk.dll"; DestDir: "{sys}"; Flags: ignoreversion
Source: "D:\我的工程\JETTHrms\FPTdll\zkemkeeper.dll"; DestDir: "{sys}"; Flags: ignoreversion onlyifdoesntexist regserver
;安装身份证阅读器控件
Source: "D:\我的工程\JETTHrms\CARDdll\license.dat"; DestDir: "C:\"; Flags: ignoreversion
Source: "D:\我的工程\JETTHrms\CARDdll\RegActiveX.bat"; DestDir: "{sys}"; Flags: ignoreversion
Source: "D:\我的工程\JETTHrms\CARDdll\SynIDCard.cer"; DestDir: "{sys}"; Flags: ignoreversion
Source: "D:\我的工程\JETTHrms\CARDdll\SynIDCard.spc"; DestDir: "{sys}"; Flags: ignoreversion
Source: "D:\我的工程\JETTHrms\CARDdll\SynIDCard.inf"; DestDir: "{sys}"; Flags: ignoreversion
Source: "D:\我的工程\JETTHrms\CARDdll\Syn.inf"; DestDir: "{sys}"; Flags: ignoreversion
Source: "D:\我的工程\JETTHrms\CARDdll\Syn.SED"; DestDir: "{sys}"; Flags: ignoreversion
Source: "D:\我的工程\JETTHrms\CARDdll\cert2spc.exe"; DestDir: "{sys}"; Flags: ignoreversion
Source: "D:\我的工程\JETTHrms\CARDdll\signcode.exe"; DestDir: "{sys}"; Flags: ignoreversion
Source: "D:\我的工程\JETTHrms\CARDdll\Syn_IDCardRead.dll"; DestDir: "{sys}"; Flags: ignoreversion
Source: "D:\我的工程\JETTHrms\CARDdll\makecert.exe"; DestDir: "{sys}"; Flags: ignoreversion
Source: "D:\我的工程\JETTHrms\CARDdll\sdtapi.dll"; DestDir: "{sys}"; Flags: ignoreversion
Source: "D:\我的工程\JETTHrms\CARDdll\certmgr.exe"; DestDir: "{sys}"; Flags: ignoreversion
Source: "D:\我的工程\JETTHrms\CARDdll\WltRS.dll"; DestDir: "{sys}"; Flags: ignoreversion
Source: "D:\我的工程\JETTHrms\CARDdll\SynIDCard.CAB"; DestDir: "{sys}"; Flags: ignoreversion
Source: "D:\我的工程\JETTHrms\CARDdll\iexpress.exe"; DestDir: "{sys}"; Flags: ignoreversion
Source: "D:\我的工程\JETTHrms\CARDdll\MAKECAB.EXE"; DestDir: "{sys}"; Flags: ignoreversion
Source: "D:\我的工程\JETTHrms\CARDdll\SynIDCard.ocx"; DestDir: "{sys}"; Flags: ignoreversion onlyifdoesntexist regserver
;安装身份证阅读器驱动
Source: "D:\我的工程\JETTHrms\CARDdriver\UsbDrv.inf"; DestDir: "{app}\CARDdriver"; Flags: ignoreversion
Source: "D:\我的工程\JETTHrms\CARDdriver\USBDrv.sys"; DestDir: "{app}\CARDdriver"; Flags: ignoreversion




; 注意: 不要在任何共享系统文件中使用“Flags: ignoreversion”

[Icons]
Name: "{group}\JETT Hrms"; Filename: "{app}\JTHRP.exe"
Name: "{group}\{cm:UninstallProgram,JETT Hrms}"; Filename: "{uninstallexe}"
Name: "{userdesktop}\JETT Hrms"; Filename: "{app}\JTHRP.exe"; Tasks: desktopicon
Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\JETT Hrms"; Filename: "{app}\JTHRP.exe"; Tasks: quicklaunchicon

[Run]
Filename: "{app}\MSDE\Setup.EXE"; Parameters: /Q; Tasks: yes
Filename: "{app}\MSDE\StartServer.BAT"; Parameters: /Q; Tasks: yes
Filename: "{app}\DataLink.exe"; Description: "{cm:LaunchProgram,立即新建数据库、配置连接参数?}"; Flags: nowait postinstall skipifsilent


msde安装脚本见以下;
[Options] 注:
SAPWD="haochin" sa的密码
INSTANCENAME="Sql2K" 实例名
SECURITYMODE=SQL 认证方式 :为windows and sql
DISABLENETWORKPROTOCOLS=0 是否关闭远程连接 0 否。

另外,也可以将一个绿色的sql server2000的查询分析器一起打外进去,那个只有3m,方便调用sql server存储过程等。
wintergoes 2010-06-22
  • 打赏
  • 举报
回复
Inno Setup + ISTool
前边是编译器,后边是编辑软件
jacksonnewton 2010-06-22
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 musa2008 的回复:]
Inno SetUp,软件已经跟你说了,先自己在网上找找教程再来问吧。
[/Quote]你啥时候跟我说了,网上都搜过了搜不到才跑来这问的
yktd26 2010-06-22
  • 打赏
  • 举报
回复
把后台sqlserver一起打包??
楼主的意思是不是把odbc一起打包?
但是Windows已经都自带了sqlserver的odbc
如果程序是以ado连接数据库可以什么都不用管,只是在程序中设置好连接字符串就好
但如果是BDE确实需要将administrator BDE打包在安装程序中并自动进行设置
grace_zou 2010-06-22
  • 打赏
  • 举报
回复
安装制作SetupFactory7.0很好用
加载更多回复(2)

2,496

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧