如何使用installshield制作带SQL2000数据库的安装程序 我使用的是installshield7.0在添加安装文件的时候我添加了exe文件,还需要添加一些什么文件呢,数据库使用的是sqlserver2000,操作系统WIN2000SERVER,两个数据库文件分别为vcd_Data.MDF和vcd_Log.LDF。请各位帮帮忙 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你盗版也盗得太厉害了吧!你说的太模糊了,SQL2000数据库大小是一张光盘呀! 不是拉,我的程序是SQLSERVER2000+DELPHI6制作的,现在我想打成安装程序,我记得客户机可以不安装SQLSERVER2000也能运行我的程序的,但是在制作安装程序的时候好象需要几个SQLSERVER的DLL文件,但是我不知道是哪几个 哈哈,很简单,NTWDBLIB.dll和?,我不即得名字了,反正是通讯的文件,你找一个安装了SQL2000客户端的电脑,有一个SQL2000客户端配置程序,启动它,我不记得是那个页(TabSheet)了,上面列举了使用某种通讯的方式,使用那个动态的连接库,如NTWDBLIB.dll好象是TCP/IP和Named Pipes的我记得不太清楚了,你自己确认一下吧 SQL Server打包为SQL语句... 你那招有问题,如果用户已经有了正版的SQL7.0呢,你附加数据库肯定有问题!客户端不需要什么的,98SE/Me/2000/Xp可以直接使用,别的,只需安装MDAC即可!附加数据库最好用程序控制,不要指望InstallShield能给你多大帮助,虽然InstallShield可以做到,但是你能肯定用户安装时已经安装了SQL2000? 我还是不明白,这样吧,简单点1>客户端是不是不用安装SQLSERVER20002>一般你们是怎么打包的,我记得有些帖子上看过只需要打包几个SQL的文件就可以了 1、不用。。2、不用打什么SQL文件的呀,把EXE带上和一些INI呀,什么的带上就行如果你用BDE,你就得带上BDE,有10M呀,,,,,,,,,,,,,, 不会吧,那没有客户端,也没有SQL相关文件,如何访问数据库呢,2个数据库文件又有何用呢 通过执行SQLServer的Isql.exe程序进行数据库的创建。 哎其实我也想问这个问题谁能详细的讲一下吗!如何发布SQL SERVER 2000开发的数据库应用程序!谁讲仔细点分不够我另开贴补! 你把SQLSERVER安装在服务器上,数据库也建立在那里,客户一边只要连接上SQLSERVER就可以用了 你去看一下:http://www.starfarmsoft.com/Amiting/index.htm下载1.0.1,首次运行时点[新建]一切你就明白了! to cow8063(吴七郎) 你的方法是可以,但是这样数据库就不保密了吧 to Hank(星星农场) 我看到了你的数据库创建过程,但是如果我的电脑上没有安装SQLSERVER2000,你的这个步骤不知道能不能正常运行呢。 不知道哪位高手有详细一点的介绍关于打包带SQL数据库的文章 不要说你没有安装SQL2000,你把SQL2000关闭你看一下是什么样?创建过程中有一个设置数据库服务器的界面,仔细研究一下!研究一下SQL2000的[导入和导出数据]你会发现很多你需要的东西! 请问installshield 在什么地方可以下载?多谢 to Hank(星星农场)你的方法也许是中不错的变向法,不过我想这也可以算是个学术问题吧,我觉得我总要搞懂的,呵呵,请各位再教我一下如何用INSTALLSHIELD来打包SQL的程序,呵呵 请问什么地方有intsallshield7.0下载? 我也想知道 sql server + delphi 的打包方法,大家能不能帮人帮到底。 晕~怎么没人回答,我知道要说清楚是很麻烦,这样吧,你们告诉我你们用什么在打包delphi+sqlserver2000的程序的,不一定用intsallshield,别的也行,只要能打出来,急啊!!! SQL2000 不是有个MSDE桌面版的吗?这个才20兆左右的。可以打包进程序里的。而且还是免费的。 如果你要做服务端的安装程序,即可能要安装SQLSERVER服务端及你的数据库的话,你需要这样做:包含SQLSERVER2000的安装盘,它的根目录下有几个SQL*.BAT文件,它是SQLSERVER的无人值守安装启动文件,你可以用它来启动SQLSERVER的安装,在安装过程中无需用户参于,安装完成后你可以用ISQL来执行你的数据库附加命令SP_ATTACHDB,这样就可以将数据库导入.如果是客户端的话,你需要打包MDAC_TYPE.EXE 2.7的版本(WIN98的太老)(假设你用的是ADO),如果你用的是BDE,那你就要打包BDE和SQLSERVER的客户端文件 这个问题很有意思!!-----我想可不可以这样来实现:(我用installshield6.22和MSSQL7.0)1、把MSSQL7.0放在软件程序内另建一个文件夹为MSSQL7.0,建立批处理文件sql.bat2、在instrallshield里添加一个END函数如下:function OnEnd()begin LaunchAppAndWait ( SOPPORTDIR ^ "sql.bat", "", WAIT);end;3、SQL Server无人值守安装 (以下是MSSQL版主大力同志写的我贴过来大家看看,,) 第1步: 判断SQL Server是否已经安装过,如果已经安装,则启动服务器(第4步); SQL Server是否已经安装的判断方法: HKEY_LOCAL_MACHINE\Software\Microsoft\MSSQLServer\Setup下的SQLPath键值 为SQL Server的安装路径,判断安装路径是否存在就可以了。 第2步: SQL Server的安装命令: 如果是桌面版本: SETUPSQL.EXE k=Dk -s -m -SMS -f1 sql70ins.iss 否则去掉参数:k=Dk 第3步: 建一个循环,通过进程来判断安装程序的结束,一旦结束则启动服务器(第4步); 第4步: 通过进程来判断SQL Server服务是否已经启动,如果已经启动则做第5步; 假设SQL Server的安装路径为c:\mssql7,数据文件路径为d:\mssql7, 则启动SQL Server服务的命令为: c:\mssql\binn\sqlservr.exe -c -dd:\mssql7\data\master.mdf -ed:\mssql7\log\errorlog -ld:\mssql7\data\mastlog.ldf 第5步: 导入数据库: 先把数据文件与日志文件拷入d:\mssql7\data下, 假设SQL Server的安装路径为c:\mssql7,数据文件为d:\mssql7\data\test_data.mdf, 日志文件为d:\mssql7\data\test_log.ldf,数据库名为test,则数据库导入的命令为: sp_attach_db 'test','d:\mssql7\data\test_data.mdf','d:\mssql7\data\test_log.ldf' 当然,如果要自动执行的话,把上面的语句写入文件(假设为c:\temp\attachdb.sql)中, 然后调用运行命令: c:\mssql\binn\osql.exe -S服务器名 -Usa -P -dMaster -ic:\temp\attachdb.sql 最后,当然您还可以加入一些自己的应用程序的安装,这样的话,您就可以发布您那完整的数据库应用 程序了,所有安装,包括数据库全部自动进行,不需要用户的干预。 如果不能正确安装,查看一下Windows目录下的sqlstp.log文件即可查出原因,对症下药就行了。 以下为文件sql70ins.iss的内容: [InstallShield Silent] Version=v5.00.000 File=Response File [DlgOrder] Dlg0=SetupMethod-0 Count=11 Dlg1=SdWelcome-0 Dlg2=SdLicense-0 Dlg3=SdRegisterUser-0 Dlg4=CDKEYDialog-0 Dlg5=SetupTypeSQL-0 Dlg6=DlgCpSortUnicode-0 Dlg7=DlgServerNetwork-0 Dlg8=DlgServices-0 Dlg9=SdStartCopy-0 Dlg10=SdFinish-0 [SetupMethod-0] Component-type=string Component-count=1 Component-0=Local Result=1 [SdWelcome-0] Result=1 [SdLicense-0] Result=1 [SdRegisterUser-0] szName=MSEMPLOYEE szCompany=Microsoft Result=1 [CDKEYDialog-0] svCDKey=47324-777-7777777-22042 Result=1 [SetupTypeSQL-0] ;Sql Server程序的安装路径 szDir=C:\MSSQL7 Result=301 ;Sql Server数据文件的路径 szDataDir=C:\MSSQL7 [DlgCpSortUnicode-0] ;如果是简体中文字符集SortId设为199,是ISO/1252字符集SortId设为52 ;如果是简体中文字符集LCID设为2052,是ISO/1252字符集LCID设为1033 SortId=52 LCID=1033 CompStyle=196609 Result=1 [DlgServerNetwork-0] NetworkLibs=4095 TCPPort=1433 TCPPrxy=Default NMPPipeName=\\.\pipe\sql\query Result=1 [DlgServices-0] Local-Domain=3855 AutoStart=61455 Result=1 [SdStartCopy-0] Result=1 [License] LicenseMode=PERSERVER LicenseLimit=5 [SdFinish-0] Result=1 bOpt1=0 bOpt2=0 参考一下微软的做法吧,我在装vs.net时没有装sqlserver,当我用到其中的示例时,程序判断出我没有装sqlserver,然后程序只是在我的机器上装了一个sqlserver引擎(注意,不是sqlserver),就可以了,从装引擎到注册数据库,丝毫没有人工介入的步骤,我想我们也应一定可以实现,大家努力试试,有答案和我联系:[email protected],当我实现之后,我也会在这里发布的,谢谢! TopGrid控件分组后如何实现导出EXCEL GetWindowThreadProcessId在哪个类里 DELPHI调用DOS命令的问题 紧急问题(在线等) 赋值小问题!!!在线急等!!!!!!! 关于StringGrid的定位问题 splash窗体的问题 转PDF 遇到的问题 请问各位大哥大姐,好心人请进!一个可能很简单的问题。 屏幕取词 怎样调出windows系统的任务计划向导? 在线等待,急!谢谢 !!
...
1>客户端是不是不用安装SQLSERVER2000
2>一般你们是怎么打包的,我记得有些帖子上看过只需要打包几个SQL的文件就可以了
2、不用打什么SQL文件的呀,把EXE带上和一些INI呀,什么的带上就行
如果你用BDE,你就得带上BDE,有10M呀,,,,,,,,,,,,,,
http://www.starfarmsoft.com/Amiting/index.htm
下载1.0.1,首次运行时点[新建]一切你就明白了!
你的方法是可以,但是这样数据库就不保密了吧
我看到了你的数据库创建过程,但是如果我的电脑上没有安装SQLSERVER2000,你的这个步骤不知道能不能正常运行呢。
创建过程中有一个设置数据库服务器的界面,仔细研究一下!研究一下SQL2000的[导入和导出数据]你会发现很多你需要的东西!
你的方法也许是中不错的变向法,不过我想这也可以算是个学术问题吧,我觉得我总要搞懂的,呵呵,请各位再教我一下如何用INSTALLSHIELD来打包SQL的程序,呵呵
-----
我想可不可以这样来实现:(我用installshield6.22和MSSQL7.0)
1、把MSSQL7.0放在软件程序内另建一个文件夹为MSSQL7.0,建立批处理文件sql.bat2、在instrallshield里添加一个END函数如下:
function OnEnd()
begin
LaunchAppAndWait ( SOPPORTDIR ^ "sql.bat", "", WAIT);
end;3、SQL Server无人值守安装 (以下是MSSQL版主大力同志写的我贴过来大家看看,,)
第1步: 判断SQL Server是否已经安装过,如果已经安装,则启动服务器(第4步);
SQL Server是否已经安装的判断方法:
HKEY_LOCAL_MACHINE\Software\Microsoft\MSSQLServer\Setup下的SQLPath键值
为SQL Server的安装路径,判断安装路径是否存在就可以了。
第2步: SQL Server的安装命令:
如果是桌面版本:
SETUPSQL.EXE k=Dk -s -m -SMS -f1 sql70ins.iss
否则去掉参数:k=Dk
第3步: 建一个循环,通过进程来判断安装程序的结束,一旦结束则启动服务器(第4步);
第4步: 通过进程来判断SQL Server服务是否已经启动,如果已经启动则做第5步;
假设SQL Server的安装路径为c:\mssql7,数据文件路径为d:\mssql7,
则启动SQL Server服务的命令为:
c:\mssql\binn\sqlservr.exe -c -dd:\mssql7\data\master.mdf
-ed:\mssql7\log\errorlog -ld:\mssql7\data\mastlog.ldf
第5步: 导入数据库:
先把数据文件与日志文件拷入d:\mssql7\data下,
假设SQL Server的安装路径为c:\mssql7,数据文件为d:\mssql7\data\test_data.mdf,
日志文件为d:\mssql7\data\test_log.ldf,数据库名为test,则数据库导入的命令为:
sp_attach_db 'test','d:\mssql7\data\test_data.mdf','d:\mssql7\data\test_log.ldf'
当然,如果要自动执行的话,把上面的语句写入文件(假设为c:\temp\attachdb.sql)中,
然后调用运行命令:
c:\mssql\binn\osql.exe -S服务器名 -Usa -P -dMaster -ic:\temp\attachdb.sql
最后,当然您还可以加入一些自己的应用程序的安装,这样的话,您就可以发布您那完整的数据库应用
程序了,所有安装,包括数据库全部自动进行,不需要用户的干预。
如果不能正确安装,查看一下Windows目录下的sqlstp.log文件即可查出原因,对症下药就行了。
以下为文件sql70ins.iss的内容:
[InstallShield Silent]
Version=v5.00.000
File=Response File
[DlgOrder]
Dlg0=SetupMethod-0
Count=11
Dlg1=SdWelcome-0
Dlg2=SdLicense-0
Dlg3=SdRegisterUser-0
Dlg4=CDKEYDialog-0
Dlg5=SetupTypeSQL-0
Dlg6=DlgCpSortUnicode-0
Dlg7=DlgServerNetwork-0
Dlg8=DlgServices-0
Dlg9=SdStartCopy-0
Dlg10=SdFinish-0
[SetupMethod-0]
Component-type=string
Component-count=1
Component-0=Local
Result=1
[SdWelcome-0]
Result=1
[SdLicense-0]
Result=1
[SdRegisterUser-0]
szName=MSEMPLOYEE
szCompany=Microsoft
Result=1
[CDKEYDialog-0]
svCDKey=47324-777-7777777-22042
Result=1
[SetupTypeSQL-0]
;Sql Server程序的安装路径
szDir=C:\MSSQL7
Result=301
;Sql Server数据文件的路径
szDataDir=C:\MSSQL7
[DlgCpSortUnicode-0]
;如果是简体中文字符集SortId设为199,是ISO/1252字符集SortId设为52
;如果是简体中文字符集LCID设为2052,是ISO/1252字符集LCID设为1033
SortId=52
LCID=1033
CompStyle=196609
Result=1
[DlgServerNetwork-0]
NetworkLibs=4095
TCPPort=1433
TCPPrxy=Default
NMPPipeName=\\.\pipe\sql\query
Result=1
[DlgServices-0]
Local-Domain=3855
AutoStart=61455
Result=1
[SdStartCopy-0]
Result=1
[License]
LicenseMode=PERSERVER
LicenseLimit=5
[SdFinish-0]
Result=1
bOpt1=0
bOpt2=0