2009年10月19日

转载 c#批量插入数据到数据库【支持事务操作】


#region   批量插入数据到数据库
             DateTime startTime;
             private bool SqlBulkCopy(DataTable dt)
             {

                 try
                 {
                     startTime = DateTime.Now;
                     //数据批量导入sqlserver,创建实例     SqlBulkCopyOptions.UseInternalTransaction采用事务   复制失败自动回滚
                     System.Data.SqlClient.SqlBulkCopy sqlbulk = new System.Data.SqlClient.SqlBulkCopy(System.Configuration.Configurat阅读全文>

发表于 @ 2009年10月19日 14:26:00 | 评论( loading... ) | 编辑| 举报| 收藏

转载 在C#中完成海量数据的批量插入和更新

对于海量数据的插入和更新,ADO.NET确实不如JDBC做到好,JDBC有统一的模型来进行批操作.使用起来
非常方便:
PreparedStatement ps = conn.prepareStatement("insert or update arg1,args2....");
然后你就可以
for(int i=0;i
   ps.setXXX(realArg);
   .....
   ps.addBatch();
   if(i%500==0){ //假设五百条提交一次
    ps.executeBatch();
    //clear Parame Batch
   }
}
ps.executeBatch();

这样的操作不仅带来极度大的性能,而且非常方便.按说,ADO.NET中,要实现这样的功能,应该直接在Command接口中
或DataAdapter接口中提供Addb阅读全文>

发表于 @ 2009年10月19日 14:21:00 | 评论( loading... ) | 编辑| 举报| 收藏

2009年06月29日

转载 vc读写注册表


注册表是Windows重要组成部分,注册表记录了大量有关电脑软硬件的信息。注册表中的值通过其名称标识。值名称由与键名相同的字符组成。值本身可以是字符串、二进制数据或者是32位无符号值。在这里我们主要运用以下技巧:

(一)、预定义的注册表键。注册表包含了几个预定义键:

HKEY_LOCAL_MACHINE 包含描述计算机及其配置的条目。其中包括关于处理器、系统主板、内存和已安装的软件和硬件的信息。  
HKEY_CLASSES_ROOT 是与文档类型和 OLE\COM 相关的信息的支持键。这个键是 HKEY_LOCAL_MACHINE的从属键。  
HKEY_USERS 用作默认用户首选设置,也作为单个用户的首选设置。  
HKEY_CLASSES_USER 是用于当前(登录)用户的相关信息。  
HKEY_CURRENT_CONFIG 包含了当前系统配置的信息。  
还有一个,一般不会出现,只有配置的局域网后才会有。  
(二)、CRegKey 类及主要使用阅读全文>

发表于 @ 2009年06月29日 17:05:00 | 评论( loading... ) | 编辑| 举报| 收藏

转载 如何在VC++中使用注册表


如今修改注册表成为继超频之后的又一大热点,许多CFAN通过对注册表的修改使Win98显得更加个性化,诸多报刊杂志也纷纷扯起注册表这面旗帜,令人遗憾的是,在介绍注册表修改的众多的文章中,大都以手工修改为例,极少数文章也只介绍有关修改注册表软件的用法,至于如何在程序中实现却无人提及。为此我在Visual Studio6.0帮助文件中用Registry关键字进行搜索,在翻译软件帮助下及不断的上机实践下,我终于摸索出使用注册表接口(API)函数的一些用法,现拿出来与大家共享。
  在程序中使用注册表,不外乎创建、打开、读取、设置、删除这五个常规操作,(要想获得更详细的资料可以参考Visual Studio6.0帮助目录中MSDN Library Visual Studio6.0|Platform SDK|Window Base Services|General Library|Registry条目)。下面我们就来关注这五个接口函数的用法:
  一、创建键RegCreateKeyEx
  通过RegCreateKeyEx函数可以在注册表中创建键,如果需要阅读全文>

发表于 @ 2009年06月29日 17:03:00 | 评论( loading... ) | 编辑| 举报| 收藏

转载 VC 注册表操作


近来由于需要在自己写的程序中对注册表进行操作。总结些经验,并做个一个DEMO供日后使用,现在把它拿出来和大家分享…… 小弟初学VC,有误之处还请赐教。

为了使用方便,我把一些操作写成了函数,以便方便调用,具体代码如下所示:

一、定义

HKEY hKey;
char content[256]; //所查询注册表键值的内容
DWORD dwType=REG_SZ; //定义读取数据类型
DWORD dwLength=256;
struct HKEY__*RootKey; //注册表主键名称
TCHAR *SubKey; //欲打开注册表项的地址
TCHAR *KeyName; //欲设置项的名字
TCHAR *ValueName; //欲设置值的名称
LPBYTE SetContent_S; //字符串类型
int SetContent_D[256]; //DWORD类型
BYTE SetContent_B[25阅读全文>

发表于 @ 2009年06月29日 17:01:00 | 评论( loading... ) | 编辑| 举报| 收藏

转载 VC读注册表


CString GetSoftWarePath()
{
CString strPath = _T("");
HKEY hkey;
DWORD   dwSize   =   512;  
char   string[512];
LPTSTR   pValue;
pValue="Path";//
LPCTSTR   Rgspath="key"   ;
RegOpenKeyEx(HKEY_LOCAL_MACHINE,"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\App Paths\\",0,KEY_READ,&hkey);
LONG   lRet   =   RegQueryValueEx(hkey   ,   Rgspath   ,   NULL   ,   REG_NONE   ,   (LPBYTE)   string   ,   &dwSize);  
if(lRet   ==   ERROR_SUCCESS阅读全文>

发表于 @ 2009年06月29日 17:00:00 | 评论( loading... ) | 编辑| 举报| 收藏

转载 用Visual C++干干净净地清除进程

读者朋友们可能经常会碰到这样一个问题,想对某些进行操作时,发现这些文件正在被其它程序使用,处于打开状态,而且是被独占打开,这时是没法对文件进行操作的。因此,要想操作这些文件,必须将打开这些文件的进程清除掉。那么如何干净地清除进程呢?其实,在Windows2000操作系统版本中有一个工具程序叫tskill.exe,用它就可以清除掉某个程序的进程,在输入"tskill 程序名"后就可以清除其运行实例。但是如何要在代码里实现tskill的功能该如何做呢?针对这一问题,本实例介绍了在Windows2000下实现的方法。阅读全文>

发表于 @ 2009年06月29日 14:58:00 | 评论( loading... ) | 编辑| 举报| 收藏

转载 VC程序中如何结束系统正在运行的其他进程


在VC程序中如何结束系统正在运行的其他进程(该进程必须有窗口界面),其实很简单,按如下步骤进行即可:
    1.取得进程的句柄(利用FindWindow函数得到);
    2.获取进程ID号(用GetWindowThreadProcessId函数获取);
    3.打开进程,OpenProcess函数中的第一个参数设为PROCESS_TERMINATE,就可以获取处理该进程的句柄;
    4.利用TerminateProcess函数结束进程,将该函数的第二个参数设为4。
    代码如下:
//结束进程
int CStaticFunc::KillProcess(LPCSTR pszClassName, LPCSTR
pszWindowTitle)
{
    HANDLE hProcessHandle; 
    ULONG nProcessID;
    HWND TheWindow;
    TheWindow = ::FindWin阅读全文>

发表于 @ 2009年06月29日 14:57:00 | 评论( loading... ) | 编辑| 举报| 收藏

2009年03月10日

转载 利用API函数向外部应用程序发送消息收藏

利用API函数向外部应用程序发送消息收藏阅读全文>

发表于 @ 2009年03月10日 16:01:00 | 评论( loading... ) | 编辑| 举报| 收藏

转载 应用程序间发送消息 c# SendMessage WM_COPYDATA

想做一个类似于快车一样的软件,从页面上做了点击后,将网址、链接等发送到某程序中去,其中用到了ActiveX等东东,这里不细说,这里只是说说ActiveX如何将得到的数据发送给处理程序。 阅读全文>

发表于 @ 2009年03月10日 15:58:00 | 评论( loading... ) | 编辑| 举报| 收藏

第1页,共15页
第一页上一页下一页最后一页
Copyright © ycs0501
Powered by CSDN Blog