1.准备一份Install Shield Express,最好是2.01以上的版本,在Delphi的安装盘上有一个专用版本也可以用,按照制作一般程序安装盘的方法建立安装程序,必须安装BDE和SQL LINKS.    2.在你的Windows\System下面找到以下几个文件(当然你的机器必须已经安装SQLServer):Dbmssocn.dll    TCP/IP 支持文件 
Dbmsspxn.dll    IPX 支持文件 
Dbnmpntw.dll    命名管道支持文件 
Ntwdblib.dll    SQLServer核心文件(这个文件最重要) 
    3.在Fpecify Components and Files的Groups and Files中,将以上几个文件加入到Program Files中去.当然你也可以建立一个组,将这些文件拷贝到System目录中,不过个人倾向于拷贝到安装目录,以便反安装的时候可以彻底的删除它们.    4.如果你的程序运行比较简单(比如只有一个网段)现在你已经大功告成了,但不幸的是大多数人的网络环境没有如此简单,下面还要修改注册表:
修改键值:
其中DSQUERY设定默认的连接协议,这里设定的是IPX,128.1.1.1则是专有的连接,这里是设定一个连接名称为128.1.1的连接,使用TCP/IP协议,IP地址为128.1.1.1,你也可以把键名改成其他名称,只要与你的别名中SERVER NAME一项相同即可.    至此,你的安装盘已经做成,现在只需要Building一下就可以了.

解决方案 »

  1.   

    看看以前的讨论,已经很详细了:
    http://www.csdn.net/expert/topic/881/881753.xml?temp=.5815699
      

  2.   

    1备份数据 2在服务器上安数据库3恢复数据4用sp_change_users_login修复已损的用户
      

  3.   

    同意楼上,另外要把数据库生成角本(包括基础数据),
    可以拿到客户那里执行
    也可以把这个角本在Installshell里打包进去(如有需要要加密哦:))
    做个数据库服务器的安装程序
    在服务器执行这些角本
      

  4.   

    sql server 数据库的安装你可以使用脚本自动安装,在你的主安装程序中先调用sqlserver安装脚本,自动进行sql server的安装 然后再是你的程序安装
    具体可以参考软件 e商
      

  5.   

    这段代码我也不知道有没人用过,是不是大家都这么用就没人说了,我想还是发出来试试,如果大家都用过就当兄弟白说,如果没有,能够给大家一个参考,小弟甚喜。
    procedure Tfeditlink.SpeedButton1Click(Sender: TObject);
    var pathstr:string;
    begin
    try
    begin
    pathstr:=ExtractFilePath(Application.ExeName);
    adocreat.ConnectionString:='Provider=SQLOLEDB.1;Password='+trim(lm.text)+';Persist Security Info=True;User ID='+trim(lname.text);
    adocreat.CommandText:='create database '+trim(data.Text);
    adocreat.Execute;
    ShellExecute(handle,'open','isqlw',pchar('-d '+trim(data.text)+' -U sa -P 790104 -i '+pathstr+'make.sql -o '+pathstr+'rec.txt'),'',0);
    本人在程序中运行ISQLW.EXE按照我自己的脚本,建立数据库。ISQLW就是SQL2000的查询分析器。MAKER.SQL是脚本。
    showmessage('数据库建立成功!');
    end;
            except
            showmessage('出错原因:'+#13+'1.数据库'+trim(data.text)+'已经建立!'+#13+'2.连接数据库的信息错误:'+#13+'    a.登陆用户名“'+trim(lname.text)+'”错!'+#13+'    b.登陆密码错误!'+#13+'3.有安装SQL Server 2000!');
    end;
    end;************
    * 努力学习 *
    *   全为   *
    *¥人民币¥*
    ************
      

  6.   

    命令提示实用工具  isqlw 实用工具
    isqlw 实用工具(SQL 查询分析器)使您得以输入 Transact-SQL 语句、系统存储过程和脚本文件。通过设置快捷方式或创建批处理文件,可以启动预配置的 SQL 查询分析器。语法
    isqlw
        [-?] |
        [
            [-S server_name[\instance_name]]
            [-d database]
            [-E] [-U user] [-P password]
            [{-i input_file} {-o output_file} [-F {U|A|O}]]
            [-f file_list]
            [-C configuration_file]
            [-D scripts_directory]
            [-T template_directory]
        ]参数-?显示用法信息。-S server_name[\instance_name]:指定要连接到的 Microsoft® SQL Server™ 2000 实例。指定用于连接到该服务器上的 SQL Server 2000 默认实例的 server_name。指定用于连接到该服务器上的 SQL Server 2000 命名实例的 server_name\instance_name。如果未指定服务器,isqlw 将连接到本地计算机上的 SQL Server 默认实例。从网络上的远程计算机执行 isqlw 时,此选项是必需的。-d database当启动 isqlw 时,发出一个 USE database 语句。默认值为用户的默认数据库。-E使用信任连接而不请求密码。-U user用户登录 ID。登录 ID 区分大小写。-P password是登录密码。默认设置为 NULL。-i input_file标识包含一批 SQL 语句或存储过程的文件。必须同时指定 -i 和 -o 选项。如果指定 -i 和 -o 选项,将执行输入文件中的查询,并将结果保存到输出文件中。在查询执行过程中不显示用户接口。当执行完成后,进程退出。-o output_file标识接收来自 isqlw 的输出的文件。必须同时指定 –i 和 –o 选项。如果指定 -i 和 -o 选项,将执行输入文件中的查询,并将结果保存到输出文件中。在查询执行过程中不显示用户接口。当执行完成后,进程退出。如果未使用 -F 指定文件格式,则输出文件使用与输入文件相同的类型。-F {U|A|O}是输入文件和输出文件的格式。值包括 Unicode、ANSI 和 OEM。如果未指定 -F,则使用自动模式(如果文件标为 Unicode 格式,则以 Unicode 格式打开;否则,以 ANSI 格式打开文件)。-f file_list将列出的文件装载到 SQL 查询分析器中。使用 -f 选项,可以装载一个或多个文件(文件名以单个空格分开)。如果指定了多个文件,则以相同的连接上下文将这些文件打开。文件名可以包含该文件所驻留的目录路径。可以使用通配符,如 C:\Test\*.sql 中的星号 (*)。-C configuration_file使用配置文件中指定的设置。其它在命令提示下显式指定的参数将重写相应配置文件中的设置。-D scripts_directory重写在注册表中或在用 –C 指定的配置文件中指定的默认存储脚本目录。该值不保留在注册表或配置文件中。若要在 SQL 查询分析器中查看该选项的当前值,请单击"工具"菜单,然后单击"选项"命令。-T template_directory重写在注册表中或在用 –C 指定的配置文件中指定的默认模板目录。该值不保留在注册表或配置文件中。若要在 SQL 查询分析器中查看该选项的当前值,请单击"工具"菜单,然后单击"选项"命令。
    注释
    有用户界面或没有用户界面时都可使用 isqlw 实用工具。若要在没有用户界面的情况下运行 isqlw,请指定有效登录信息(具有信任连接或有效登录 ID 及密码的 SQL Server 2000 实例)和输入及输出文件。isqlw 将执行输入文件的内容,并将结果保存到输出文件中。如果没有指定输入和输出文件,isqlw 将交互运行并启动 SQL 查询分析器。如果指定了有效登录信息,isqlw 将直接连接 SQL Server 2000 实例。如果指定的连接信息不充足,将出现"连接到 SQL Server"对话框。isqlw 和 SQL 查询分析器使用 ODBC API。该实用工具使用 SQL-92 的 Microsoft® SQL Server ODBC 驱动程序默认设置。有关更多信息,请参见 SQL-92 选项的效果。有关该实用工具的更多信息,请参见命令提示实用工具入门。示例
    A. 执行 SQL 语句本例连接到 MyServer(pubs 数据库),并执行 input_file 中的 SQL 语句,执行结果存储在 output_file 中。isqlw -S MyServer -d pubs -U sa -P -i input_file -o output_file
    B. 使用通配符本例将所有 .sql 文件装载到 SQL 查询分析器中。所有连接均使用 Windows 身份验证并指向本地服务器上的 pubs 数据库。isqlw -d pubs -E -f "c:\Program Files\Microsoft SQL Server\MSSQL\Install\*.sql"
    C. 装载多个文件本例将两个文件装载到 SQL 查询分析器中。将使用 Windows 身份验证连接到本地服务器。isqlw -d pubs -E -f "c:\Program Files\Microsoft SQL Server\MSSQL\Install\instpubs.sql" "c:\Program Files\Microsoft SQL Server\MSSQL\Install\instcat.sql"
    D. 使用 Unicode 文件本例使用 Windows 身份验证连接到 MyServer 上的 pubs 数据库,并执行 Input.sql 文件。结果保存在 Output.txt 文件中。这些文件以 Unicode 文件方式打开。isqlw -S MyServer -d pubs -E -i input.sql -o output.txt -FU
      

  7.   

    谢谢大家,我们最近找到了一个方法是采用如下SQL语句:
    //备份数据库
    BACKUP DATABASE 'DATABASENAME' TO DISK ='BACKUPFILENAME';
    //设置数据库的DEVICES
    EXEC SP_ADDUMPDEVICE 'DISK' ,'DATABASENAME'
    //设置逻辑文件列表
    RESTORE FILELISTONLY 'DATABASENAME'
    //恢复数据库
    RESTORE DATABASE 'DATABASENAME'
    FROM 'BACKUPFILENAME'
    WITH MOVE 'MDFFILENAME' TO 'DATAFILEPATH',
         MOVE 'LOGFILENAME' TO 'LOGFILEPATH'
    请大家指正,该代码用语SQLV7.0和SQLV2000下通过调试