如题,大家帮帮忙,小弟谢谢了。

解决方案 »

  1.   

    .NET打包安装MSDE以及安装和卸载1、创建安装项目“Setup1”安装项目
    在“文件”菜单上指向“添加项目”,然后选择“新建项目”。
    在“添加新项目”对话框中,选择“项目类型”窗格中的“安装和部署项目”,然后选择“模板”窗格中的“安装项目”。在“名称”框中键入 “setup1”。
    单击“确定”关闭对话框。
    项目被添加到解决方案资源管理器中,并且文件系统编辑器打开。
    在“属性”窗口中,选择 ProductName 属性,并键入”遥测水位数据接收软件”。  选择setup1右键添加项目输出将你的应用程序以及相应的类库,数据库文件添加到安装程序中, 打开文件系统界面, 找到应用程序文件夹, 右键点击你的应用程序,创建两个快捷方式,
      右键属性指定对应的图标, 分别拖到用户的"程序"菜单和用户桌面上. 完成初步安装.2. 添加卸载程序
      在打包项目中添加文件msiexec.exe(一般在c:\windows\system32(系统目录中)找到)。在文件系统视图中选择应用程序文件,在msiexec.exe上单击右键选择“创建快捷方式”,重命名快捷方式为“uninst”.更改此快捷方式Argmuments为“/x {产品ID}”,产品ID的值为打包项目的ProductCode属性值。3. 打包MSDE SP3选择“文件系统编辑器”,在“视图“菜单上指向“添加”,然后选择“合并模块…”(Merge Moudle),在添加模块中,找到MSDE sp3安装文件所在目录,将MSM,MSM\1033,MSM\2052下的所有文件,添加进来。在安装项目Setup1的属性(Properties)中的“Search Path”,添加MSM,MSM\1033,MSM\2052目录。单击“生成菜单下的“生成解决方案”,编译Setup1安装项目工程。
    4. 自动附加数据库
    解决方案中新添加项目,项目类型为windows类库, 然后添加新建项->安装程序类, 打开Installer1.cs切换到代码编辑视图, 添加以下代码 
    Code
     1        private void CreateDataBase()
     2        {
     3            // 启动SQL服务, 预防装完之后服务未启动
     4            Process p = new Process();
     5            p.StartInfo.FileName = "cmd.exe";
     6
     7            p.StartInfo.UseShellExecute = false;
     8            p.StartInfo.RedirectStandardInput = true;
     9            p.StartInfo.RedirectStandardOutput = true;
    10            p.StartInfo.RedirectStandardError = true;
    11            p.StartInfo.CreateNoWindow = true;
    12
    13            p.Start();
    14            p.StandardInput.WriteLine("net start MSSQL$HW1000");
    15            p.StandardInput.WriteLine("exit");
    16            p.StandardOutput.ReadToEnd();
    17
    18            string strSql = string.Format("server={0}; user id={1}; password={2}; Database=master", "(local)\\hw1000", "sa", "sa");
    19            string strMdf = this.Context.Parameters["targetdir"] + "database\\ShanDongShuiQing.mdf";
    20            string strLdf = this.Context.Parameters["targetdir"] + "database\\ShanDongShuiQing_log.ldf";
    21            //LogWriter.LogEvent("MDF路径:" + strMdf);                       
    22            string str;
    23            SqlConnection myConn = new SqlConnection(strSql);
    24            str = "EXEC sp_attach_db @dbname = N'ShanDongShuiQing', @filename1 = N'" + strMdf + "',@filename2=N'" + strLdf + "'";
    25            SqlCommand myCommand = new SqlCommand(str, myConn);
    26            myConn.Open();
    27            myCommand.ExecuteNonQuery();
    28            myConn.Close();
    29        }
    30
    31        protected override void OnAfterInstall(System.Collections.IDictionary savedState)
    32        {
    33            base.OnAfterInstall(savedState);
    34            try
    35            {
    36                CreateDataBase();
    37            }
    38            catch (Exception ex)
    39            {
    40                throw new Exception(ex.ToString());
    41            }
    42        }编译InstallDB项目. 5. 建自定义操作
    在解决方案资源管理器中选择安装项目“Setup1”项目,在“视图”菜单上指向“编辑器”,然后选择“自定义操作”。在“自定义操作编辑器”中选择“安装”节点。单击右键“添加自定义操作”,在选择项目中的项中选择“应用程序文件夹”,选择“主输出来自InstallDB(活动)”。在“属性窗口”中选择“CustomActionData”属性并键入“/targetdir="[TARGETDIR]\"”。附:/targetdir="[TARGETDIR]\"是安装后的目标路径,为了在InstallDB类中获得安装后的路径,我们设置此参数。生成安装程序 6. 修改安装程序
    用Orca MSI安装文件修改器打开生成的安装包(Setup1.msi)文件,在左列的表栏中选择“InstallExecuteSequence”表,修改下面的属性值:GetSqlStates.XXXXXX 103改成421RemoveExistingProducts值改成1800InstallInitialize值改成1799在InstallUISequence选择“InstallUISequence”表,修改下面的值:GetSqlStates.XXXXXX 103改成421选择“Property”表,添加以下三个属性:SqlInstanceName:MSDEDH实例服务名SqlSecurityMode:SQL(不加这行确实也行,就是没办法用SQL模式登录)SqlSaPwd:sa的密码  
    到此全部完成, 安装软件后测试通过, 卸载通过. 参考
    参考
      

  2.   

    这类似的发布太多了,去Google下吧,你在这别人也都是Google的。因为要写的太长了
      

  3.   

    留个记号。。以后查看,集成IIS有用么??感觉没用,
      

  4.   

    集成sqlserver?   你是说自动附加还是安装啊   2000 600M    2005 600M*2   2008。。 这个也加进去??
      

  5.   

    安装部署
    可以在安装部署中操作IIS
    using (DirectoryEntry parent = new DirectoryEntry("IIS://localhost/W3SVC/1/Root"))   
    {   
      using (DirectoryEntry newFolder = (DirectoryEntry)parent.Invoke("Create", "IIsWebVirtualDir", "NewVDir"))   
      {   
      newFolder.InvokeSet("Path", @"");  
      newFolder.Invoke("AppCreate", true);   
      newFolder.InvokeSet("AppFriendlyName", "NewVDir");   
      newFolder.CommitChanges();   
      }
    }
    操作IIS
    sql server单独安装,数据库通过SQL附加或创建数据库
    web 安装部署