做项目的一点收获之二
写注册表
程序中要求有个开机自动运行的备选功能,在网上查了查,大概有三种方法实现开机自动运行:开始菜单中的“启动”组,Windows服务,写注册表。我选择了写注册表,代码如下:
{
RegistryKey Reg = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Run",true);
string sFilePath = Application.ExecutablePath;
Reg.SetValue("DBExchanger",sFilePath);
}
else
{
RegistryKey Reg = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Run",true);
Reg.DeleteValue("DBExchanger",true);
}
使用委托
因为不能够向线程传递参数(可以定义一个类,准备好线程要使用的数据,然后把该类的方法传递给线程委托),也不会返回值,因此要想从线程返回值,可以使用委托。委托使用方法见C#中的代理(Delegate)
检测网络
程序要求在连接数据库之前要先检测网络是否连通,所以这里又用到了基于套接字的编程。
{
bool flag=true;
string ip= netid.ToString();
IPAddress myIP = IPAddress.Parse(ip);
//根据给定的IP地址字符串,处理IPAddress实例
try
{
EndPoint ep=new IPEndPoint(myIP,port);
Socket sock=new Socket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp);
sock.Connect(ep);
if (sock.Connected)
{
flag=true;
}
}
catch
{
flag=false;
}
return flag;
}
最小化到系统托盘
设置窗体的SizeChanged事件,如下 :
{
if (this.WindowState==System.Windows.Forms.FormWindowState.Minimized)
{
this.Hide();
this.notifyIcon1.Visible=true;
}
}
MySql参数化查询
这个项目针对的是MySql数据库,以前没有用过,所以在写参数化查询语句还是像写SQL Server和Access参数化查询语句时一样,例如一条查询语句:
cmmd.Parameters.Add("@"+ClmName[0],MySql.Data.MySqlClient.MySqlDbType.String);
cmmd.Parameters[0].Value = "Peter"
cmmd.Parameters.Add("@"+ClmName[1],MySql.Data.MySqlClient.MySqlDbType.LongBlob);
cmmd.Parameters[1].Value = ByteArrayData;
cmmd.Parameters.Add(MySql.Data.MySqlClient.MySqlDbType.Int32);
cmmd.Parameters[0].Value = "20051102"
但就是怎么都更新不了,也没有错误信息,后来经人指点才知道,原来MySql的参数占位符是"?",我把cmmd.CommandText中的"@"改成"?"后就可以了。
转载于:https://www.cnblogs.com/supersand/archive/2005/11/01/266600.html
做项目的一点收获之二相关推荐
- unity3D与网页的交互---做项目的一点总结
由于项目需要,要求用unity来展示三维场景,并在三维中能够方便的查询数据库等.一开始尝试在unity中直接连接数据库,当时连的xml,然而每次发布成网页后都会出现路径找不到等问题,所以迫不得已采用了 ...
- 最近做项目的总结与收获(2021年8月)
最近做项目的总结与收获(2021年8月) 1 总结 1.1 做的事情 这个月也是做了一个中规中矩的微服务项目吧,一开始看到项目架构的时候觉得内容特别多,但实际做完之后发现其实还是驾驭的了的. 一个月下 ...
- 最近做项目带团队的一点感悟:什么是赚钱潜规则?
最近不少人信誓旦旦的跑来WX上跟我说:童话,我买了你的课程,有几个问题不懂,请教下!要不就是:童话,我买了你的课程,怎么操作到某某步骤时就不行了呢? 反问:你们在哪买的我的课程? "淘宝上& ...
- 大二计算机跟老师做项目,在大学里,要不要和老师一起合作做项目?过来人说出实情...
在大学里,要不要和老师一起合作做项目?过来人说出实情 在大学里,很多老师都会找自己的学生共同去做一些项目,当然,做不做是学生的自由,老师并不会强迫,有的人说不能和老师一起做项目容易被坑,有的人说能和老 ...
- 如何做项目或产品演示?
项目或产品演示不是演讲,也不是答辩,更不是培训. 尽管在很多表达和现场互动技巧上,演讲,答辩,培训和演示都有相通的地方. 演讲更侧重对某一个问题看法的陈述,主要是交换观点,允许争鸣,听众可以不同意你的 ...
- 【转】做产品VS做项目
相关定义 根据GB/T19000-2008<质量管理体系基础和术语>,有以下定义 过程process 一组将输入转化为输出的相互关联或相互作用的活动 注:一个过程的输入通常是其他过程的输出 ...
- 三点估算pmp_我本人是做项目经理的,我把考PMP也当成一个项目来规划
一. 辅导班的好处 咨询过几位前辈后,我毫不犹豫的选择参加辅导班.说服自己的理由至少有以下三点: 1. PMP指南对大部分人是陌生的新学科和新模式,普遍反映上面的话不是人的语言,参加培训班可以有专业的 ...
- 项目管理必知项,做项目经理必须知道的几个事情
一直觉得我们公司的项目管理比较奇葩,现在学习pmp之后发现原来如此.不是公司奇葩,是我自己水平不够误解公司了. 做项目经理,必须知道的几个事情.看了PMP看了他讲了很多,结合自己的实践经验,总结一下. ...
- 做项目的一些心得体会
原文地址:转:做项目的一些心得体会作者:快乐吧900 发信人: sunshineyaya (sunshine), 信区: Innovation 标 题: [创新实验]经验分享 系列 NO.1 发 ...
最新文章
- hdu 4722(记忆化搜索)
- MATLAB中简单的数据库操作
- python与人工智能的关系_python和人工智能之间的关系是什么?老男孩Python人工智能...
- (五)Docker查看容器ip及指定固定IP
- H - Hello Ms. Ze(树状数组套主席树,线段树上二分)
- 带参数的URLconf
- centos7调节虚拟机字体_初次安装虚拟机中Ubuntu16.04系统设置的一些小问题(小白教程)...
- python之网络编程1-socket-tcp与udp
- android输入框圆形,GitHub - mylhyl/Android-CircleDialog: 仿IOS圆角对话框、进度条、列表框、输入框,ad广告框,支持横竖屏切换...
- open函数返回-1_记录学习python的第3天-递归函数/文件操作
- web前端技术基础课程讲解之浅谈对soket的理解
- html登录界面QQ微信图标,discuz修改QQ登录图标和微信登录图标的方法
- 使用神经网络(Keras)完成对土壤的湿度估计
- PB高拍仪无纸化软件方案
- 扩展卡尔曼滤波python_扩展卡尔曼滤波EKF与多传感器融合
- 大学生HTML作业篮球网页 HTML作业篮球网页期末作业 HTML+CSS篮球网页 HTML学生作业体育篮球网页
- 车上控制器中英文对照
- 手机直播系统,仿映客直播程序项目需求
- JavaScript:用JS函数隐藏浏览器地址栏 .
- 埃及分数数学模型c语言,C语言将真分数分解为埃及分数代码解析
热门文章
- alert,confirm和prompt
- nginx 禁止IP访问服务器和非法域名绑定你的IP
- RHEL6入门系列之十三,阶段练习1
- java学习(4)--oracle
- DotNetNuke: System.Security.Cryptography.CryptographicException: Bad Data
- s3c2410_gpio_cfgpin函数解析
- 抽象工厂模式:实现ASP.NET访问不同数据库
- 基于面向服务体系架构(SOA)和面向资源体系架构(ROA)的业务组件模型
- gin使用BasicAuth()(验证)中间件
- DevOps笔记-04:DevOps工具和文化缺一不可