c# windows服务程序
2009-04-27 23:12
253 查看
using System;
using System.Xml;
using System.IO;
using System.Threading;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.ServiceProcess;
using System.Text;
namespace ImageService
{
partial class Image : ServiceBase
{
private Thread MainThread;
public Image()
{
InitializeComponent();
MainThread = new Thread(new ThreadStart(ThreadFunc));
}
protected override void OnStart(string[] args)
{
// TODO: 在此处添加代码以启动服务。
MainThread.Start();
}
protected override void OnStop()
{
// TODO: 在此处添加代码以执行停止服务所需的关闭操作。
MainThread.Abort();
}
private void writeImagetToXml(string cardno)
{
string sql = "select * from vw_ejw_rk_czrk_zp where gmsfzh='" + cardno + "'";
databaseQ dao = new databaseQ();
DataSet ds = null;
string xmlPath = @"D:/ImageWrite/admin_czrk_photo.xml";
try
{
ds = dao.GetDataOra(sql,Constant.connectString);
if(ds.Tables[0].Rows.Count>0)
{
createXml(xmlPath);
DataSet dst = new DataSet();
dst.ReadXml(xmlPath);
if (dst.Tables[0].Rows.Count > 0)
{
dst.Tables[0].Rows[0]["PHOTO_JPG"] = ds.Tables[0].Rows[0]["zp"].ToString();
}
dst.AcceptChanges();
dst.WriteXml(xmlPath);
dst.Dispose();
}
}
catch (Exception ex)
{
}
finally
{
ds.Dispose();
}
}
private void ThreadFunc()
{
string xmlPath = @"D:/ImageRead/admin_czrk_photo.xml";
DataSet ds = new DataSet();
try
{
ds.ReadXml(xmlPath);
if(ds.Tables[0].Rows.Count>0)
{
string cardno = ds.Tables[0].Rows[0]["PHOTO_NO"].ToString();
writeImagetToXml(cardno);
}
}
catch (Exception ex)
{
}
finally
{
ds.Dispose();
}
File.Delete(xmlPath);
}
private void createXml(string xmlpath)
{
if (!File.Exists(xmlpath))
{
//File.Delete(xmlPath);
//生成跟节点
XmlDocument xdc = new XmlDocument();
XmlNode xnode = xdc.CreateNode(XmlNodeType.Element, "NewDataSet", "");
xdc.AppendChild(xnode);
//生成子接点
XmlElement ele = xdc.CreateElement("", "Table", "");
xnode.AppendChild(ele);
//生成三级子接点
XmlElement elee = xdc.CreateElement("", "PHOTO_USERID", "");
XmlText xtexte = xdc.CreateTextNode("admin");
elee.AppendChild(xtexte);
ele.AppendChild(elee);
//生成三级子接点
XmlElement elee1 = xdc.CreateElement("", "PHOTO_YWTYPE", "");
XmlText xtexte1 = xdc.CreateTextNode("常住人口");
elee.AppendChild(xtexte1);
ele.AppendChild(elee1);
//生成三级子接点
XmlElement elee2 = xdc.CreateElement("", "PHOTO_NO", "");
XmlText xtexte2 = xdc.CreateTextNode("110101195702264538");
elee.AppendChild(xtexte2);
ele.AppendChild(elee2);
//生成三级子接点
XmlElement elee3 = xdc.CreateElement("", "PHOTO_JPG", "");
ele.AppendChild(elee3);
xdc.Save(xmlpath);
}
}
}
}
using System.Xml;
using System.IO;
using System.Threading;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.ServiceProcess;
using System.Text;
namespace ImageService
{
partial class Image : ServiceBase
{
private Thread MainThread;
public Image()
{
InitializeComponent();
MainThread = new Thread(new ThreadStart(ThreadFunc));
}
protected override void OnStart(string[] args)
{
// TODO: 在此处添加代码以启动服务。
MainThread.Start();
}
protected override void OnStop()
{
// TODO: 在此处添加代码以执行停止服务所需的关闭操作。
MainThread.Abort();
}
private void writeImagetToXml(string cardno)
{
string sql = "select * from vw_ejw_rk_czrk_zp where gmsfzh='" + cardno + "'";
databaseQ dao = new databaseQ();
DataSet ds = null;
string xmlPath = @"D:/ImageWrite/admin_czrk_photo.xml";
try
{
ds = dao.GetDataOra(sql,Constant.connectString);
if(ds.Tables[0].Rows.Count>0)
{
createXml(xmlPath);
DataSet dst = new DataSet();
dst.ReadXml(xmlPath);
if (dst.Tables[0].Rows.Count > 0)
{
dst.Tables[0].Rows[0]["PHOTO_JPG"] = ds.Tables[0].Rows[0]["zp"].ToString();
}
dst.AcceptChanges();
dst.WriteXml(xmlPath);
dst.Dispose();
}
}
catch (Exception ex)
{
}
finally
{
ds.Dispose();
}
}
private void ThreadFunc()
{
string xmlPath = @"D:/ImageRead/admin_czrk_photo.xml";
DataSet ds = new DataSet();
try
{
ds.ReadXml(xmlPath);
if(ds.Tables[0].Rows.Count>0)
{
string cardno = ds.Tables[0].Rows[0]["PHOTO_NO"].ToString();
writeImagetToXml(cardno);
}
}
catch (Exception ex)
{
}
finally
{
ds.Dispose();
}
File.Delete(xmlPath);
}
private void createXml(string xmlpath)
{
if (!File.Exists(xmlpath))
{
//File.Delete(xmlPath);
//生成跟节点
XmlDocument xdc = new XmlDocument();
XmlNode xnode = xdc.CreateNode(XmlNodeType.Element, "NewDataSet", "");
xdc.AppendChild(xnode);
//生成子接点
XmlElement ele = xdc.CreateElement("", "Table", "");
xnode.AppendChild(ele);
//生成三级子接点
XmlElement elee = xdc.CreateElement("", "PHOTO_USERID", "");
XmlText xtexte = xdc.CreateTextNode("admin");
elee.AppendChild(xtexte);
ele.AppendChild(elee);
//生成三级子接点
XmlElement elee1 = xdc.CreateElement("", "PHOTO_YWTYPE", "");
XmlText xtexte1 = xdc.CreateTextNode("常住人口");
elee.AppendChild(xtexte1);
ele.AppendChild(elee1);
//生成三级子接点
XmlElement elee2 = xdc.CreateElement("", "PHOTO_NO", "");
XmlText xtexte2 = xdc.CreateTextNode("110101195702264538");
elee.AppendChild(xtexte2);
ele.AppendChild(elee2);
//生成三级子接点
XmlElement elee3 = xdc.CreateElement("", "PHOTO_JPG", "");
ele.AppendChild(elee3);
xdc.Save(xmlpath);
}
}
}
}
相关文章推荐
- C# 生成windows 服务打包程序
- C# 创建、安装和卸载Windows服务程序
- C#编写Windows服务程序
- C# 自动程序 windows 无法启动 XXXX 服务 错误5 拒绝访问
- C#编写Windows服务程序详细步骤详解(图文)
- C#编写Windows服务程序图文教程
- C#编写Windows服务程序图文教程
- c#写服务、exe 可执行程序、windows锁屏的过程中遇到的问题
- C#Windows服务工程添加安装程序的方法
- C# 开发Windows服务程序并在计算机上注册服务
- c# windows服务 启动外部程序,程序已开启,但看不到界面
- C#下的Windows服务通用壳程序(二)
- C# 编写Windows Service(windows服务程序)
- c# windows 服务程序 内存泄露
- C# 编写Windows Service(windows服务程序)
- c#开发Windows服务程序及部署
- c#开发的程序安装时动态指定windows服务名称
- C#制作 Windows 服务安装程序
- c# Windows 服务程序编写与调试
- C#编写Windows服务程序图文教程