vs2010 打包mdb文件吗_VS制作安装程序,包含mdb数据库文件

时间:2023-09-18 08:16

??

mysql数据库sql语句:

UPDATE user_wealth SET Gold=9999999 WHERE UserID=164

CALL sp_user_login('t1', '202cb962ac59075b964b07152d234b70', '127.0.0.1')

UPDATE room_info SET RoomTeltComIp=16777343,RoomUnicomIp=16777343,RoomMobileIp=16777343,OnlyReadDbIp=16777343

UPDATE room_info SET MinPlayer=2 WHERE roomid=8000

F9 Execute Current Query (Default)

数据库中给机器人用的保留帐号:

端口为8000三公房间的机器人帐号为T100-T109(UPDATE user_wealth SET Gold=40000 WHERE userid>=100 && userid<=109);

端口为8100三公房间的机器人帐号为T110-T119(UPDATE user_wealth SET Gold=40000 WHERE userid>=110 && userid<=119);

端口为8200三公房间的机器人帐号为T120-T129(UPDATE user_wealth SET Gold=400000 WHERE userid>=120 && userid<=129);

端口为8300三公房间的机器人帐号为T130-T139(UPDATE user_wealth SET Gold=4000000 WHERE userid>=130 && userid<=139);

DELETE FROM user_info WHERE userid>=100 && userid<=139

DELETE FROM user_wealth WHERE userid>=100 && userid<=139

INSERT? INTO `user_info`(`UserId`,`Name`,`Nickname`,`RealName`,`IdentityCard`,`Password`,`BankPassword`,`RegisterIP`,`RegistTime`,`ClubId`,`Sex`,`Mobile`,`identity`,`MasterPower`,`MasterPowerEx`,`GamePower`,`GamePowerEx`,`SysLogoID`,`AllLoginCounts`,`LastLoginTime`,`LastLoginIP`,`Money`,`RegistPlatform`,`MachineCode`)

VALUES(100,'T100','T100',NULL,NULL,'202cb962ac59075b964b07152d234b70',NULL,NULL,'2013-08-12 10:41:51',NULL,NULL,NULL,0000000000,NULL,NULL,NULL,NULL,NULL,NULL,'2013-10-23 11:07:11','127.0.0.1',NULL,1,NULL);

INSERT? INTO `user_wealth`(`UserID`,`Gold`,`Point`,`Experience`,`Feats`,`GameCoin`,`anti_addiction_time`,`anti_addiction_play_time`,`WinCount`,`LostCount`,`Revenue`) VALUES (100,40000,20,0,70910,0,1382492756,359,10,13,528),(101,40000,-450,0,0,0,1382497686,14,3,2,343);

UPDATE user_wealth SET Gold=40000 WHERE userid>=10 && userid<=99 UPDATE user_wealth SET POINT=0 WHERE userid>=100 && userid<=139 UPDATE user_wealth SET Feats=0 WHERE userid>=100 && userid<=139 机器人账号T100-T139的密码由123改为1234 UPDATE user_info SET PASSWORD='81DC9BDB52D04DC20036DBD8313ED055' WHERE userid>=100 AND userid<=139 //操作MDB文件的小工具MdbTool.exe #include #include #include using namespace std;

BOOL __stdcall ExecuteDeleteAllRecords(char *strDBQ,char *strTable) { ?try ?{ ??CDaoDatabase db; ??string strSQL=strTable; ??strSQL="delete from "+strSQL; ??www.mareenoire.info(strDBQ); ??db.Execute(strSQL.c_str()); ??db.Close(); ?} ?catch(CDaoException * pe) ?{? ??AfxDaoTerm(); ??return FALSE; ?} ?AfxDaoTerm(); ?return TRUE; }

BOOL __stdcall ExecuteDropTable(char *strDBQ,char *strTable) { ?try ?{ ??CDaoDatabase db; ??string strSQL=strTable; ??strSQL="DROP TABLE "+strSQL; ??www.mareenoire.info(strDBQ); ??db.Execute(strSQL.c_str()); ??db.Close(); ?} ?catch(CDaoException * pe) ?{? ??AfxDaoTerm(); ??return FALSE; ?} ?AfxDaoTerm(); ?return TRUE; }

BOOL __stdcall ExecuteSQL(char *strDBQ,char *strSQL) { ?try ?{ ??CDaoDatabase db; ??www.mareenoire.info(strDBQ); ??db.Execute(strSQL); ??db.Close(); ?} ?catch(CDaoException * pe) ?{? ??AfxDaoTerm(); ??return FALSE; ?} ?AfxDaoTerm(); ?return TRUE; }

int main(int argc, char* argv[]) { ?char sz[100]={0}; ?char sz1[100]={0}; ?char sz2[100]={0}; ?if(argc<2) ?{ ??printf("请输入mdb文件名:"); ??scanf("%s",sz); ?} ?else ??strcpy(sz,argv[1]); ?if(argc<3) ?{ ??printf("请输入表名或SQL语句(例如CREATE TABLE ThisTable(FirstName TEXT, LastName TEXT);):"); ??scanf("%s",sz1); ?} ?else ??strcpy(sz1,argv[2]); ?if(argc<4) ?{ ??printf("请选择:1.删除表中所有记录;2.删除表;3.SQl语句:"); ??scanf("%s",sz2); ?} ?else ??strcpy(sz2,argv[3]); ?int iflag=atoi(sz2); ?if(iflag==1) ?{ ??BOOL ret=ExecuteDeleteAllRecords(sz,sz1); ??if(ret==TRUE) ???::MessageBox(NULL,"删除表中记录完毕", "", MB_OK) ; ?} ?else if(iflag==2) ?{ ??BOOL ret=ExecuteDropTable(sz,sz1); ??if(ret==TRUE) ???::MessageBox(NULL,"删除表完毕", "", MB_OK) ; ?} ?else if(iflag==3) ?{ ??BOOL ret=ExecuteSQL(sz,sz1); ??if(ret==TRUE) ???::MessageBox(NULL,"执行SQL语句完毕", "", MB_OK) ; ?}

?system("pause"); ?return 0; } //Compact.exe----压缩MDB文件 //Win7+VC2010编译,by Ivan_han 20130626 #include "afxwin.h" #import "C:\Program Files (x86)\Common Files\System\ado\msado20.tlb" no_namespace rename("EOF", "adoEOF") #import "C:\Program Files (x86)\Common Files\System\ado\MSJRO.DLL" int main(int argc, char* argv[]) { ?char sz[100]={0}; ?char sz1[100]={0}; ?if(argc<2) ?{ ??printf("请输入mdb文件名:"); ??scanf("%s",sz); ?} ?else ??strcpy(sz,argv[1]); ?strcpy(sz1,sz); ?sz1[strlen(sz1)]='1'; ?CoInitialize(NULL); ?CString strSrcConn,strDestConn; ?strSrcConn.Format("Provider=Microsoft.JET.OLEDB.4.0;Data Source=%s;Jet OLEDB:Database Password=%s",sz,""); ?strDestConn.Format("Provider=Microsoft.JET.OLEDB.4.0;Data Source=%s;Jet OLEDB:Database Password=%s",sz1,""); ?try ?{ ??JRO::IJetEnginePtr jet(__uuidof(JRO::JetEngine)); ??jet->CompactDatabase((LPCTSTR)strSrcConn, (LPCTSTR)strDestConn); ?} ?catch(_com_error &e) ?{?????? ??::MessageBox(NULL, (LPCTSTR)e.Description( ), "", MB_OK) ;??? ?} ?::DeleteFile(sz); ?::MoveFile(sz1,sz); ?::MessageBox(NULL,"压缩Access数据库完毕", "", MB_OK) ; ?CoUninitialize(); ?system("pause"); ?return 0; } ADO读写本机或远程64位MySQL的配置和示例 99服务器:Windows Server 2008 R2 Enterprise 64位+MySQL Server 5.5 64位 本机:Win7旗舰版 64位+MySQL Server 5.5 64位 本机myodbc 64位:mysql-connector-odbc-5.2.5-winx64.msi 本机VC2010程序用x64编译运行 本机VBS脚本64位解释运行 64wscript.bat start C:\windows\system32\wscript mysql.vbs 或 64cscript.bat start C:\windows\system32\cscript mysql.vbs 不用 32wscript.bat start C:\windows\SysWOW64\wscript mysql.vbs 32cscript.bat start C:\windows\SysWOW64\cscript mysql.vbs mysql.vbs示例 Dim Cnn Dim Rst Dim strCnn

'使用StrCnn句柄连接数据库, 'StrCnn="DRIVER={MySQL ODBC 3.51 Driver};SERVER=127.0.0.1;PORT=3306;DATABASE=mysql; USER=root;PASSWORD=123;OPTION=3;"'WINXP+MySQL55下连接成功 StrCnn="DRIVER={MySQL ODBC 5.2 ANSI Driver};SERVER=192.168.1.99;PORT=3306;DATABASE=mysql; USER=root;PASSWORD=mysql55;OPTION=3;"'WIN7+MySQL55下连接成功 'StrCnn="DSN=myODBCdsn;DRIVER={MySQL ODBC 5.2 ANSI Driver};SERVER=127.0.0.1;UID=root;PWD=mysql55;DATABASE=mysql;PORT=3306;OPTION=3;" '创建连接对象 Set Cnn = CreateObject("ADODB.Connection") www.mareenoire.info strCnn? '使用Cnn对象方法打开? StrCnn

'查看是否连接成功,成功状态值为1

'msgbox Conn.state If Cnn.State = 0 Then ???? msgbox? "连接数据库失败" else ??? msgbox?? "连接数据库成功" End If

Dim strQuery?? '查询句柄 strQuery = "select * from help_topic" Set Rst = Cnn.Execute(strQuery)??? '创建查询句柄对象 If Not Rst.BOF Then WScript.Echo Rst("help_topic_id") WScript.Echo Rst("name") Else MsgBox "数据为空" End If

MsgBox "点击结束" VC2010示例 #include"StdAfx.h" #include #import "c:\\Program Files\\Common Files\\System\\ado\\msado15.dll" no_namespace rename("EOF", "EndOfFile") /* 'StrCnn="DRIVER={MySQL ODBC 3.51 Driver};SERVER=127.0.0.1;PORT=3306;DATABASE=mysql; USER=root;PASSWORD=123;OPTION=3;"'WINXP+MySQL55下连接成功 StrCnn="DRIVER={MySQL ODBC 5.2 ANSI Driver};SERVER=127.0.0.1;PORT=3306;DATABASE=mysql; USER=root;PASSWORD=mysql55;OPTION=3;"'WIN7+MySQL55下连接成功

help_topic_id 19 name 129 help_category_id 18 description 201 example 201 url 129

注意,用x64编译,不要用Win32编译,否则出现如下错误: Description = '[Microsoft][ODBC 驱动程序管理器] 在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配' */ int main(int argc, char* argv[]) { ?printf("使用ADO读写Mysql数据库,需要安装Mysql的ODBC驱动(myodbc3.dll、myodbc3S.dll)\n"); ?CoInitialize(NULL); ?try ?{ ??_ConnectionPtr pConn("ADODB.Connection"); ??_RecordsetPtr pRst("ADODB.Recordset"); ??//采用myodbc 连接mysql??? ??//pConn->Open("DSN=myODBCdsn;DRIVER={MySQL ODBC 5.2 ANSI Driver};SERVER=127.0.0.1;UID=root;PWD=mysql55;DATABASE=mysql;PORT=3306;OPTION=3;","","",adConnectUnspecified); ??pConn->Open("DRIVER={MySQL ODBC 5.2 ANSI Driver};SERVER=192.168.1.99;PORT=3306;DATABASE=mysql; USER=root;PASSWORD=mysql55;OPTION=3;","","",adConnectUnspecified);

??//Open "help_topic" table ??pRst->Open("help_topic", _variant_t((IDispatch *) pConn, true), ???adOpenStatic, adLockReadOnly, adCmdTable); ??FieldsPtr fds=pRst->GetFields(); ??printf("printf field name of the table\n"); ??for(int i=0;iGetCount();i++) ??{ ???FieldPtr fd=fds->GetItem(_variant_t(short(i))); ???printf("%s ",(LPCTSTR)fd->GetName()); ???printf("%d\n ",fd->GetType()); ??} ??printf("\n"); ??pRst->Close(); ??pConn->Close(); ?} ?catch (_com_error &e) ?{ ??printf("Description = '%s'\n", (char*) e.Description()); ?} ?::CoUninitialize(); ?system("pause"); ?return 0; } 使用ADO读写Mysql数据库,需要安装Mysql的ODBC驱动(myodbc3.dll、myodbc3S.dll) printf field name of the table ID 19 ?AccountName 200 ?Password 129 ?Asker 200 ?PlayerType 16 ?RealName 200 ?IDCard 129 ?IDCardIsInvalid 16 ?Email 200 ?Question 16 ?Answer 200 ?RegDate 135 ?RegIP 200 ?Active 16 ?Partner 200 ?Ticket 3 ?FreezeDate 3 ?AskerId 3 ?ActiveTime 135 #include #import "c:\\Program Files\\Common Files\\System\\ado\\msado15.dll" no_namespace rename("EOF", "EndOfFile") int main(int argc, char* argv[]) { ?printf("使用ADO读写Mysql数据库,需要安装Mysql的ODBC驱动(myodbc3.dll、myodbc3S.dll)\n"); ?CoInitialize(NULL); ?try ?{ ??_ConnectionPtr pConn("ADODB.Connection"); ??_RecordsetPtr pRst("ADODB.Recordset"); ??????????? //采用myodbc 连接mysql??? ??????? pConn->Open("DRIVER={MySQL ODBC 3.51 Driver};SERVER=192.168.1.108; DATABASE=kp_accounts;UID=root;PWD=root; OPTION=3" ??//pConn->Open("PROVIDER=MSDASQL;DRIVER={Microsoft Access Driver (*.mdb)};DBQ=F:\\Data阅读\\ch.mdb;UID=;" ???//pConn->Open("Provider= Microsoft.Jet.OLEDB.4.0;Data Source=F:\\Data阅读\\ch.mdb;"//this is also OK ???,"","",adConnectUnspecified); ??//Open "accounts" table ??pRst->Open("accounts", _variant_t((IDispatch *) pConn, true), ???adOpenStatic, adLockReadOnly, adCmdTable); ??FieldsPtr fds=pRst->GetFields(); ??printf("printf field name of the table\n"); ??for(int i=0;iGetCount();i++) ??{ ???FieldPtr fd=fds->GetItem(_variant_t(short(i))); ???printf("%s ",(LPCTSTR)fd->GetName()); ????? printf("%d\n ",fd->GetType()); ??} ??printf("\n"); ??pRst->Close(); ??pConn->Close(); ?} ?catch (_com_error &e) ?{ ??printf("Description = '%s'\n", (char*) e.Description()); ?} ?::CoUninitialize(); ?system("pause"); ?return 0; } Dim Ca Set Ca = WScript.CreateObject("ADOX.Catalog") '建立数据库文件Access97 or Access2000 'Ca.Create("Provider=Microsoft.Jet.OLEDB.3.51;Data Source=D:\DBTest\GSGameUserDB.mdb") Ca.Create("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\DBTest\GSGameUserDB.mdb") Set Ca=Nothing WScript.Echo "CREATE GSGameUserDB.mdb OK!" Dim oConn,sConnStr,strSQL sConnStr="Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=D:\DBTest\GSGameUserDB.mdb;Persist Security Info=false;Jet OLEDB:System database=D:\DBTest\system.mdw" Set oConn=WScript.CreateObject("ADODB.Connection") www.mareenoire.info sConnStr strSQL="CREATE TABLE PlayerAccouts "&_ ?"([PlayerID] INTEGER,"&_ ?"[Accouts] TEXT(12),"&_ ?"[LogonPass] TEXT(12),"&_ ?"[Online] BIT,"&_ ?"[FaceID] INTEGER,"&_ ?"[NickName] TEXT(20),"&_ ?"CONSTRAINT [Index1] PRIMARY KEY ([PlayerID]));" oConn.Execute strSQL oConn.Close Set oConn=Nothing WScript.Echo "CREATE TABLE PlayerAccouts OK!" Dim Ca Set Ca = WScript.CreateObject("ADOX.Catalog") '建立数据库文件Access97 or Access2000 'Ca.Create("Provider=Microsoft.Jet.OLEDB.3.51;Data Source=D:\DBTest\TestDB.mdb") Ca.Create("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\DBTest\TestDB.mdb") Set Ca=Nothing WScript.Echo "CREATE TestDB.mdb OK!" Dim oConn,sConnStr,strSQL sConnStr="Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=D:\DBTest\TestDB.mdb;Persist Security Info=false;Jet OLEDB:System database=D:\DBTest\system.mdw" Set oConn=WScript.CreateObject("ADODB.Connection") www.mareenoire.info sConnStr strSQL="CREATE TABLE T_Employee "&_ ?"([EmployeeID] TEXT,"&_ ?"[Name] TEXT,"&_ ?"[Rank] TEXT);" oConn.Execute strSQL oConn.Close Set oConn=Nothing WScript.Echo "CREATE TABLE T_Employee OK!" Dim oConn,sConnStr,strSQL sConnStr="Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=D:\DBTest\TestDB.mdb;Persist Security Info=false;Jet OLEDB:System database=D:\DBTest\system.mdw" Set oConn=WScript.CreateObject("ADODB.Connection") www.mareenoire.info sConnStr strSQL="INSERT INTO T_Employee values ('000','刘德华','主管');" oConn.Execute strSQL strSQL="INSERT INTO T_Employee values ('001','张学友','主管');" oConn.Execute strSQL strSQL="INSERT INTO T_Employee values ('053','万芳','');" oConn.Execute strSQL oConn.Close Set oConn=Nothing WScript.Echo "INSERT INTO T_Employee OK!" Dim Ca Set Ca = WScript.CreateObject("ADOX.Catalog") '建立数据库文件Access97 or Access2000 'Ca.Create("Provider=Microsoft.Jet.OLEDB.3.51;Data Source=D:\DBTest\QPSiSeQiuDB.mdb") Ca.Create("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\DBTest\QPSiSeQiuDB.mdb") Set Ca=Nothing WScript.Echo "CREATE QPSiSeQiuDB.mdb OK!" Dim oConn,sConnStr,strSQL sConnStr="Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=D:\DBTest\QPSiSeQiuDB.mdb;Persist Security Info=false;Jet OLEDB:System database=D:\DBTest\system.mdw" Set oConn=WScript.CreateObject("ADODB.Connection") www.mareenoire.info sConnStr strSQL="CREATE TABLE IssueInfo "&_ ?"([IssueID] INTEGER,"&_ ?"[BallNumber] BYTE,"&_ ?"[Finish] BYTE,"&_ ?"[FinishDate] DATETIME,"&_ ?"[CreateDate] DATETIME,"&_ ?"CONSTRAINT [Index1] PRIMARY KEY ([IssueID]));" oConn.Execute strSQL oConn.Close Set oConn=Nothing WScript.Echo "CREATE TABLE IssueInfo OK!" Dim oConn,sConnStr,strSQL sConnStr="Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=D:\DBTest\QPSiSeQiuDB.mdb;Persist Security Info=false;Jet OLEDB:System database=D:\DBTest\system.mdw" Set oConn=WScript.CreateObject("ADODB.Connection") www.mareenoire.info sConnStr 'strSQL="INSERT INTO IssueInfo values (121100001,7,1,'2012-11-01 17:10','2012-11-01 14:10');" 'oConn.Execute strSQL 'strSQL="INSERT INTO IssueInfo values (121100002,3,1," & 123 & "," & 456 & ");" 'oConn.Execute strSQL for i=1 to 12 strSQL="INSERT INTO IssueInfo values (" & 121100002+i & "," & i & ",1," & CDbl(DateAdd("s",30,Now)) & "," & CDbl(Now) & ");" oConn.Execute strSQL next oConn.Close Set oConn=Nothing WScript.Echo "INSERT INTO IssueInfo OK!" '功能:VBS访问SQL Server 2005数据库 dim conn set conn=WScript.CreateObject("ADODB.Connection") www.mareenoire.info "Driver={SQL Server};server=192.168.1.108;database=QPSiSeQiuDB;uid=sa;pwd=123;" dim rst set rst=WScript.CreateObject("ADODB.Recordset") sSQL="select top 20 * from dbo.IssueInfo;" www.mareenoire.info sSQL,conn,1,1 if rst.eof and rst.bof then ??? WScript.Echo "没有记录" else ??? do while not rst.eof ??????? WScript.Echo rst("IssueID") & " " & rst("BallNumber") & " " & rst("Finish") & " " & rst ("FinishDate") & " " & rst("CreateDate") ??????? rst.movenext ??? loop end if WScript.Sleep 4000 WScript.QUIT rst.close set rst=nothing conn.close set conn=thing ALTER PROCEDURE [dbo].[SSQ_OUT_Test] AS --没开奖数量 SELECT COUNT(*) as cnt FROM IssueInfo WHERE Finish=0 '功能:VBS执行SQL Server 2005数据库中的存储过程 dim conn set conn=WScript.CreateObject("ADODB.Connection") www.mareenoire.info "Driver={SQL Server};server=192.168.1.108;database=QPSiSeQiuDB;uid=sa;pwd=123;" dim rst '正确的写法1: 'dim vRe 'set rst=conn.Execute("EXEC SSQ_OUT_TEST",vRe,1) '正确的写法2: set rst=WScript.CreateObject("ADODB.Recordset") '或www.mareenoire.info "EXEC SSQ_OUT_TEST",conn,1,1 '或www.mareenoire.info "SSQ_OUT_TEST",conn,1,1 www.mareenoire.info "SSQ_OUT_TEST",conn if rst.eof and rst.bof then ??? WScript.Echo "没有记录" else ??? do while not rst.eof ??????? 'WScript.Echo rst("cnt") ??????? WScript.Echo rst(0) ??????? rst.movenext ??? loop end if WScript.Sleep 4000 WScript.QUIT rst.close set rst=nothing conn.close set conn=thing '功能:VBS执行SQL Server 2005数据库中的存储过程 dim conn set conn=WScript.CreateObject("ADODB.Connection") www.mareenoire.info "Driver={SQL Server};server=192.168.1.108;database=QPSiSeQiuDB;uid=sa;pwd=123;" dim rst '正确的写法1: dim vRe set rst=conn.Execute("EXEC SSQ_OUT_GetUserScore_Info 4084",vRe,1) '正确的写法2: 'set rst=WScript.CreateObject("ADODB.Recordset") 'www.mareenoire.info "EXEC SSQ_OUT_GetUserScore_Info 4084",conn,1,1 '或www.mareenoire.info "SSQ_OUT_GetUserScore_Info 4084",conn,1,1 '或www.mareenoire.info "SSQ_OUT_GetUserScore_Info 4084",conn if rst.eof and rst.bof then ??? WScript.Echo "没有记录" else ??? do while not rst.eof ??????? 'WScript.Echo rst("cnt") ??????? WScript.Echo rst(0) & "," & rst(1) & "," & rst(2) & "," & rst(3) ??????? rst.movenext ??? loop end if WScript.Sleep 4000 WScript.QUIT rst.close set rst=nothing conn.close set conn=thing

?????? 以前在VS2010下进行的开发工作所用的数据库不是Oracle就是MSSQL。今天在学习控件开发时突然想连接一下mdb文件试试,结果让我遇到了一个不是问题的问题。

在VS2010的 服务器资源管理器 中怎么连接 mdb文件,就是提示“未指定的错误”,让我一头雾水。我就开始从网上找呀找呀,没有几个贴子把事讲明白,而且越搞越复杂了。

正在我郁闷时,我的VS2010突然崩了,当我再次打开它时,结果发现数据库连接也都正常了,所以有时侯还真不能较真!

使用的平台:Visual Studio 2005

?

目的:为“报表”制作一个安装程序,附加数据库的mdb文件,水晶报表的rpt文件。

?

步骤如下

?

1,打开"报表“的工程,为它添加一个Setup的项目。

?

文件-》添加-》新建项目

?

”添加新项目“对话框中:其他项目类型-》Setup And Deployment-》Setup Project

?

假设项目名称为”SetupReporter“

?

2,设置Setup项目的属性

解决方案管理资源管理器中,选择SetupReporter,右键:Add-》项目输出-》Primary Output、Localized Resources、Content Files

?

记住,需要在报表的工程中将mdb文件和rpt文件都包含在项目中,这样才能让Content Files这个设置生效。

?

?

添加Unistall:

在打包项目中添加文件msiexec.exe(一般在c:/windows/system32(系统目录中)找到)。

在文件系统视图中选择应用程序文件,在msiexec.exe上单击右键选择“创建快捷方式”,重命名快捷方式为“uninst”.

更改此快捷方式Argmuments为“/x {产品ID}”,产品ID的值为打包项目的ProductCode属性值。

参考另一篇文章:http://www.mareenoire.info/zsq811122/blog/item/ea6781f425e97767ddc474a6.html

1.新建一C# Windows From项目,完成项目的工作

2.菜单-》文件-》添加项目-》新建项-》安装部署项目-》安装向导

选择上面那个项目的主输出。

在安装项目的属性栏中会显示出"XXX部署项目属性",在第一个AddRemoveProgramsIcon属性后"浏览"到你的ICO图标,接着在下面Author输入作者名,也就是你的名字,其他Localization是语言属性,Manufacturer,ProductName的属性将是用户在安装时默认设置的文件夹路径一部分了,设置Title为你的应用程序标题名称。

3.右击"安装项目"上,选择文件系统视图

在应用程序文件夹,添加一个文件,如果是WIN98下的安装,请选择WIN98操作系统目录下的msiexec.exe文件(一般在c:\windows\system目录下);如果是其他,比如WIN2K系列,请选择该操作系统目录下的msiexec.exe文件(一般在\winnt\system32目录下)。

4.在文件系统视图的"用户程序菜单"里,添加一个目录,命名为项目的名字,

并且,在这个目录里,添加一个快捷方式,指向项目的主输出,

再添加一个快捷方式,指向加入的文件Msiexec.exe,命名为:"卸载",

5.在解决方案里,选择安装项目,再打开属性视图,打开安装项目的属性面板,里面有一项:

ProductCode {5284694C-24C1-4FCF-A705-D4B9A0081274}

把后面的{5284694C-24C1-4FCF-A705-D4B9A0081274},复制一下。

6.在"卸载"快捷方式的属性里,有一个叫Arguments的属性栏,在属性栏中首先填入"/x"后加一个空格,再"粘贴",将ProductCode的属性值COPY至此。

7、再在www.mareenoire.info的顶部菜单栏中"生成"-"生成 XXXX"(XXXX为你的项目名称)

0条大神的评论

发表评论

Copyright© 黑海资讯

鄂ICP备2023014923号