安装程序中如何进行数据库连接测试??(在线等……) 在vs2005中做安装程序,用户界面编辑器中添加了文本框以便让客户输入数据库sa的密码,但是我想在这个界面中的文本框后增加一个按钮,以便测试数据库是否能够连接和输入的sa密码是否正确,可我不知道怎么加这个按钮,以及点击这个按钮怎么调用测试数据库代码????谢谢各位大侠了………… 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 try{conn.open();}catch...打开数据库连接,如果成功为正确,不成功为错误 你需要添加自定义安装类(Install),并编写相应的方法,添加一个自定义的form窗体,在这个窗体里添加文本框和按钮并编写C#代码进行数据库连接测试。 1:添加一个类库项目,比如InstallDll,添加一个安装程序类(Installer1),按实际情况重写基类的方法,比如: protected override void OnBeforeInstall(System.Collections.IDictionary savedState) { try { MessageBox.Show("安装前"); //string sourceDir = this.Context.Parameters["SourceDir"]; //MessageBox.Show(sourceDir); } catch (Exception ex) { MessageBox.Show(ex.Message); } base.OnBeforeInstall(savedState); }在方法里面可以调用设计好的Form,比如在项目里添加一个窗体Form1,可以这样: protected override void OnBeforeInstall(System.Collections.IDictionary savedState) { try { Form1 f=new Form1(); f.ShowDialog(); } catch (Exception ex) { MessageBox.Show(ex.Message); } base.OnBeforeInstall(savedState); }这样你的逻辑可以写到Form1中了。生成这个项目,在安装项目里添加为主输出,在自定义操作里添加相应的节点下,重新生成安装项目进行测试。 参考下这个:http://www.neter8.com/thread-64554-1-1.html protected override void OnBeforeInstall(IDictionary savedState) { try { Form1 f = new Form1(); f.ShowDialog(); } catch (Exception ex) { System.Windows.Forms.MessageBox.Show(ex.Message); } base.OnBeforeInstall(savedState); }我做的怎么是在安装完成之后才测试窗口啊??? OleDbConnection con = new OleDbConnection("Provider=SQLOLEDB;Persist Security Info=True;Data Source=" + ip + ";Password=" + pwd + ";User ID=" + uid + ";Initial Catalog=" + database); error = con.ConnectionString; try { //con.ConnectionTimeout = 500; con.Open(); con.Close(); con.Dispose(); } catch (OleDbException err) { error = err.Message; con.Close(); con.Dispose(); } 我觉得用state来检测当前数据库状态可能更加科学一点 从流中读取二进制数据性能问题。 在css文件中,有些地方是在名称前加 . ,有些地方是加 # ,各自是什么意思啊? 请前辈指点! 请教一个c#中picturebox控件的问题 这个方法要用到的一些参数应该怎样声明?请高手指教!!感激! winform中,有一个窗体设置f2的topmost为true;请问怎样使messageBox.show探出的对话框在f2窗口的前面 C#中delegate C# 中如何实现自动运行exe程序呀 谁能帮我解决问题 关于axWMPLib~~ 如何用代码控制gridview控件字体的大小 获得选中按钮的名称 提示一下 c# 怎么编写链表 谢谢
{
conn.open();
}
catch...
打开数据库连接,如果成功为正确,不成功为错误
{
try
{
MessageBox.Show("安装前");
//string sourceDir = this.Context.Parameters["SourceDir"];
//MessageBox.Show(sourceDir);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
base.OnBeforeInstall(savedState);
}在方法里面可以调用设计好的Form,比如在项目里添加一个窗体Form1,可以这样:
protected override void OnBeforeInstall(System.Collections.IDictionary savedState)
{
try
{
Form1 f=new Form1();
f.ShowDialog();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
base.OnBeforeInstall(savedState);
}
这样你的逻辑可以写到Form1中了。生成这个项目,在安装项目里添加为主输出,在自定义操作里添加相应的节点下,重新生成安装项目进行测试。
http://www.neter8.com/thread-64554-1-1.html
{
try
{
Form1 f = new Form1();
f.ShowDialog();
}
catch (Exception ex)
{
System.Windows.Forms.MessageBox.Show(ex.Message);
}
base.OnBeforeInstall(savedState);
}
我做的怎么是在安装完成之后才测试窗口啊???
+ ";Password=" + pwd
+ ";User ID=" + uid
+ ";Initial Catalog=" + database);
error = con.ConnectionString;
try
{
//con.ConnectionTimeout = 500; con.Open();
con.Close();
con.Dispose();
}
catch (OleDbException err)
{
error = err.Message;
con.Close();
con.Dispose();
}