- 博客(39)
- 收藏
- 关注
原创 SQL2005中CURSOR的用法举例
--声明游标,admin是一个表的名称,该游标标识了该表中的属性名称DECLARE Column_Name CURSOR FOR SELECT name FROM sys.columns WHERE object_id = object_id(admin);--打开游标OPEN Column_Name;DECLARE @Column_Name VARCHAR(100)--从游标中获
2008-08-23 14:04:00 2117
原创 用VC实现注册表中DWORD类型数据的读取
使用上篇文章《VC中操作注册表的实现源码》的GetStrValue函数来读取DWORD类型时,得到的是乱码。这是因为读取DWORD类型后将其转换成了字符类型,所以如果想得到DWORD类型,需要进行一次强制类型转换,方法如下: CRegeditOp regeditOP; CString szValue; DWORD dKeyType; DWORD dLength =
2008-08-19 22:52:00 2333
原创 VC中操作注册表的实现源码
#pragma onceconst UINT BUFFER_LENGTH = 1024;const UINT BUFFER_LENGTH_BINARY = 3;enum err { ERR_OPENREGKEY, ERR_SETREGVALUE, ERR_QUERYVALUE, ERR_DELETEVALUE, ERR_SUBKEYEXIST, ERR_CREATESUBKEY, ERR_DE
2008-08-19 22:26:00 193
翻译 操作注册表的API函数介绍(RegCreateKeyEx:该函数用来创建注册表键,如果该键已经存在,则打开它)
RegCreateKeyEx该函数用来创建注册表键,如果该键已经存在,则打开它(注册表键不区分大小写)LONG RegCreateKeyEx( HKEY hKey, LPCTSTR lpSubKey, DWORD Reserved, LPTSTR lpClass, DWORD dwOptions, REGSAM samDesired, LPSECURITY_ATTRIBUT
2008-08-03 11:19:00 13643
翻译 操作注册表的API函数介绍(RegQueryValueEx:该函数用来查找一个给定类型和值的注册表项)
RegQueryValueEx该函数用来查找一个给定类型和值的注册表项,为了保证任何字符串以空结束符返回,请使用RegGetValue函数LONG RegQueryValueEx( HKEY hKey, LPCTSTR lpValueName, LPDWORD lpReserved, LPDWORD lpType, LPBYTE lpData, LPDWORD lpcbData)
2008-08-03 10:56:00 2965
翻译 操作注册表的API函数介绍(RegSetValueEx:该函数用来设置注册表的键值和键类型)
RegSetValueEx:该函数用来设置注册表的键值和键类型LONG RegSetValueEx( HKEY hKey, LPCTSTR lpValueName, DWORD Reserved, DWORD dwType, const BYTE× lpDate, DWORD cbData);参数hKey 入参,标示一个被打开的键的句柄,该键必须以KEY_SET_VALUE 安全级别打开。该句柄可
2008-08-03 10:30:00 3887 1
翻译 操作注册表的API函数介绍(RegOpenKeyEx:该函数用来打开特定的注册表键)
RegOpenKeyEx:该函数用来打开特定的注册表键,注册表键值是不区分大小写的。该远程调用接口也存在,函数名称为CeRegOpenKeyExLONG RegOpenKeyEx( HKEY hKey, LPCWSTR lpSubKey, DWORD ulOptions, REGSAM samDesired, PHKEY phkResult ); Parameters参数h
2008-08-02 18:14:00 6545
原创 关于黑盒测试
做了几天的测试,总结下经验,个人见解,未必全部正确,请大家指教:1、测试用例的编写很重要,我认为好得测试用例即使是对该产品没有任何了解的人也能够完成该项测试。2、测试心态要正确,你必须认为待测的产品是存在bug的,这样你才能测出根多的bug3、对于测试出的bug,其复现过程一定要精确,这样有利于对bug的确认和修改。这里举一个网页登录界面测试的例子:测试时间:××. ××.×
2008-05-22 22:00:00 1210 1
原创 远程访问MySql数据库的方法
现在如果在PC1 上安装Mysql数据库,其默认root用户和我们创建ZXAdmin用户Host属性值都是Localhost,这样这两个用户只能在PC1本机登录的时候,才能访问数据库。如果想在PC2上的客户端 用root 账户访问 PC1上的数据库,只需要修改账户的Host属性即可。修改方法如下:在任意机子上的 用root账户登录都能访问 PC1上的数据库。:update user
2007-08-03 15:14:00 3745
原创 一个读位图并显示的类,未完
头文件#pragma once#include using namespace std;typedef unsigned char* HMYBITMAP;const CString FILE_TYPE_ERROR = "It is not bitmap file!";const CString FILE_READ_ERROR = "Read file Error!";const CString
2007-07-20 12:38:00 1170
原创 WaitForSingleObject函数的使用
WaitForSingleObject当指定的对象处于有信号状态或者等待时间结束的状态时,此函数返回。DWORD WaitForSingleObject( HANDLE hHandle, DWORD dwMilliseconds);参数: hHandle:指定对象或事件的句柄; dwMilliseconds: 等待时间,以毫妙为单位,当超过等待时间时,此函数将返回。如果该参数设置为0,则该函数
2007-07-17 17:16:00 21367 1
原创 读取并显示一幅位图的方法
读取并显示一幅位图的方法:1、读取文件头,文件头格式如下:typedef struct tagBITMAPFILEHEADER { WORD bfType;//位图标识,必须示‘BM’ DWORD bfSize;//标识位图文件的大小,单位是字节 WORD bfReserved1;//未使用 WORD bfReserved2;//未使用 DWORD bfOffBits;//从头文件
2007-07-10 14:42:00 2291
原创 oracle 基本操作 未完待续
set timing on:记录操作所用的时间set autotrace traceonly:不显示查询结果,只跟踪查询计划。
2007-07-06 11:24:00 832
原创 使用MFC操作Excel,写入
1、创建基于对话框的应用程序;2、通过类型库增加6个类,分别为_Application, _Workbook, _Worksheet, Workbooks, Worksheets, Range。 这六个类添加完毕后会自动去掉_,并在类之前加上C。3、在C***Dlg类中增加上述六个类的对象做成员变量: CWorkbook book; CWorkbooks books; CWor
2007-06-25 16:58:00 10475 3
转载 c++中比较难于理解的部分。未完待续
1.指针。包括变量指针、函数指针等。可以计算。2.引用。包括变量的引用、函数的引用等。3.自由函数。4.类。包括具体类和抽象类。5.重载。包括函数重载和操作符重载。6.成员数据。包括static和非static的。7.成员函数。包括static和非static的。8.虚函数。包括对虚函数的override。9.继承。包括多继承、虚继承等。10.多态。包括动多态和静多态。11.类型转换。包括隐式的和
2007-06-14 17:17:00 2292
原创 查找文件夹中的所有文件及子文件夹的方法,附源程序,VC7.1下编译运行通过
#include#includeusing namespace std;void main(){ WIN32_FIND_DATA fd; //查找第一个文件,并获取指向该文件夹的Handle;可以使用通配符,表示查询此路径下的所有文件和文件夹。 HANDLE hFind = ::FindFirstFile("C://*.*",&fd); do { //通过文件的属性来对特定的一类文件进行处理
2007-06-13 16:01:00 1526
原创 二叉树的生成与遍历演示,附源代码,在VC7.1下可编译运行通过。
头文件:#ifndef BINARY_TREE_H#define BINARY_TREE_Htemplate struct nodeType{ elemType info; nodeType* llink; nodeType* rlink;};template class BinaryTreeType{public: const BinaryTreeType& operator = (co
2007-06-13 15:12:00 2231
原创 在程序中获得驱动器盘符的方法,附源程序,可在VC7.1下编译运行
#define _WIN32_WINNT 0x0501#include #include #include #include #include #include using namespace std;int main(int argc, char *argv[]){ //获得驱动器标识,调用GetLogicalDrivers()函数可以得到一个32位的DWORD类型的数字,其中每一位标识一个
2007-06-13 09:45:00 982 2
原创 VC中获取主机名和IP地址的方法
1、创建一个对话框应用程序,加载windows socket的动态连接库,方法为在对话框的InitDialog函数中增加如下代码: WORD wVersionRequested; WSADATA wsaData; int err; wVersionRequested = MAKEWORD(2,0); err = WSAStartup(wVersionRequested,&wsaData); if(
2007-06-06 15:43:00 1886
原创 IP地址与子网掩码简单介绍
IPV4 给每台主机分配一个32位的二进制数 IPV6 给每台主机分配一个128位的二进制数IPV4的32位地址被分割成两部分:前缀后后缀,前缀用于确定计算机从属的物理网络,后缀则用于确定网络上一台单独的计算机。现在所有的主机都要求支持子网编址,不是把IP地址看成由单纯的一个网络号号一个主机号组成,而是把主机号再分成一个子网号和一个主机号。这样做主要是因为A类和B类地址为主机
2007-06-04 21:29:00 975
原创 远程操作Unix上的Oracle数据库的方法解决查询数据时出现乱码的问题
1、telnet ***.***.***.***2、输入登录名和密码3、sqlplus oracle用户名/密码4、经入oracle的Sqlplus管理程序 5、使用select userenv(language) from dual 语句查询字符集类型6、打开注册表编辑器,定位到:KEY_LOCAL_MACHINE,SOFTWARE,ORACLE,HOME0下的NLS_L
2007-06-04 09:52:00 870
原创 CScrollBar控件的使用方法:
1、在对话框中拖入CScrollBar控件,并修改ID,2、在对话框的InitDialog函数中增加如下代码,完成CScrollBar的初始化. CScrollBar* pScrollBar = (CScrollBar*)GetDlgItem(IDC_SCROLLBAR_HORIZONTAL); pScrollBar->SetScrollRange(0,100);//滑块移动的位置为0——100;
2007-05-31 21:32:00 2785
原创 CListCtrl的简单使用
1、向对话框中拖动一个CListCtrl控件,修改其ID,将View属性修改为Report(报表);2、为CListCtrl增加变量;3、在InitDialog函数中初始化CListCtrl,需要设置CListCtrl的Style。 m_CListCtrl.SetExtendedStyle(LVS_EX_FULLROWSELECT);//整行选择4、插入列头; m_CListCtrl.Insert
2007-05-31 21:32:00 1054
原创 获得exe所在的文件夹路径的方法
1、定义一个TCHAR类型的数据,并初始化, TCHAR path[PathLength] = {0};2、调用函数GetModuleHandle(NULL)函数来获得Exe文件的句柄; HMODULE hModule = ::GetModuleHandle(NULL);3、调用函数GetModuleFileName()函数来获取Exe文件的路径; int Length = ::GetModule
2007-05-31 21:30:00 1714
原创 CPropertySheet控件使用举例
1、添加对话框资源,并为其创建类,这里使用ClassA,基类为CPropertyPage;2、添加新类ClassB,基类为CPropertySheet;3、在ClassB中添加ClassA的对象成员m_ClassA;4、在ClassB中的构造函数中增加语句AddPage(&m_ClassA);5、在菜单中增加新项并添加命令相应函数,在函数中增加如下语句 ClassB dlgClassB; dlg
2007-05-26 00:22:00 1142
原创 抽象工厂模式举例
#includeusing namespace std;//抽象产品类class Product{public: Product(){} ~Product(){} virtual void OperateProduct() = 0;};//实际产品carclass car:public Product{public: car(){} ~car(){} virtual void OperatePro
2007-05-26 00:21:00 982
原创 单例模式举例 singleton
#include using namespace std;class A{public: A(){} ~A(){}public: static A& GetInstance(void); bool operator == (const A& a);private: int b; int a; static A m_A; };A& A::GetInstance(){ return m_A;}
2007-05-26 00:17:00 767
转载 C/C+语言struct深层探索
1. struct的巨大作用 面对一个人的大型C/C++程序时,只看其对struct的使用情况我们就可以对其编写者的编程经验进行评估。因为一个大型的C/C++程序,势必要涉及一些(甚至大量)进行数据组合的结构体,这些结构体可以将原本意义属于一个整体的数据组合在一起。从某种程度上来说,会不会用struct,怎样用struct是区别一个开发人员是否具备丰富开发经历的标志。 在网络协议、
2007-05-24 22:20:00 712
转载 给年轻工程师的十大忠告
[1]好好规划自己的路,不要跟着感觉走!根据个人的理想决策安排,绝大部分人并不指望成为什么院士或教授,而是希望活得滋润一些,爽一些。那么,就需要慎重安排自己的轨迹。从哪个行业入手,逐渐对该行业深入了解,不要频繁跳槽,特别是不要为了一点工资而转移阵地,从长远看,这点钱根本不算什么,当你对一个行业有那么几年的体会,以后钱根本不是问题。频繁地动荡不是上策,最后你对哪个行业都没有摸透,永远是新手!
2007-05-24 22:05:00 683
原创 Window定时器得用法
Windows定时器可以看作是一个信号发生器,当用户设定得时间耗尽时,系统会自动调用定时器得回调函数。windows API设定一个定时器得函数为Settimer,函数原型如下:UINT_PTR SetTimer( HWND hWnd, UINT_PTR nIDEvent, UINT uElapse, TIMERPROC lpTimerFunc)
2007-05-21 23:45:00 4974 1
原创 CProgressCtrl 进度条控件的使用方法简单介绍
1、创建一个CProgressCtrl的对象,将控件拖入对话框中,为空间增加变量即可2、对声明的对象进行范围,进度增长步长和起始点位置增长的的设定使用SetRange,SetStep和SetPos函数完成;3、在需要对其操作的函数中调用函数StepIt使其按初始设定的步长进行增长;
2007-05-21 23:39:00 8666 2
原创 MFC控件 状态条的简单介绍及使用 CStatusBar
1、CStatusBar在MFC中类继承关系:CObject CCmdTarget CWnd CControlBar CStatusBar2、CStatusBar成员函数介绍:virtual BOOL Create( CWnd* pParentWnd, DWORD dwStyle = WS_CHILD | WS_VISIBLE | CBRS_BOTTO
2007-05-14 20:54:00 3965
原创 windows socket 基本知识 client socket
客户端socket程序编写过程: 1、定义socket、地址结构和端口;SOCKET ClientSocket; struct sockaddr_in sa; int ServerPort=5555;2、加载socket动态链接库WSAStartup(MAKEWORD(1,1),&WsaData)3、创建socket,填写服务器的地址ClientSock
2007-05-13 17:39:00 1429
原创 关于Unicode的小知识
Unicode是Apple和Xerox公司于1988年建立的技术标准,其目的是为了能够表示各种语言中的字符(汉语使用256个字符进行表示是远远不够的)Unicode就是字符串中的所有字符都是16位的(宽字符)。这样,对于字符的编码就有65536个。可以适应各种语言的编码要求。以下是Unicode字符的分配:0 0 0 0 - 0 0 7 F A S C I I
2007-05-11 23:18:00 704
原创 windows socket 基本知识 server socket
win socket的server的编写流程:1、定义win socket 结构和地址结构:SOCKET ServerSocket,ClientSocket;struct sockaddr_in SocketAddress,ClientAddr;2、加载socket动态链接库:WSAStartup(MAKEWORD(1,1),&WsaData)3、填写地址结构: SocketA
2007-05-11 20:56:00 3003
转载 Windows常用运行命令
winver---------检查Windows版本wmimgmt.msc----打开windows管理体系结构(WMI)wupdmgr--------windows更新程序wscript--------windows脚本宿主设置write----------写字板winmsd---------系统信息wiaacmgr-------扫描仪和照相机向导winchat--------XP自带局域网聊天
2007-05-10 19:32:00 1202
原创 SQL Server中从Excel中读取数据的方法
SELECT * FROM OpenDataSource( Microsoft.Jet.OLEDB.4.0, Data Source="D:/RadioConfigurationData-1-LAN1-10-RNC10-20070118.xls"; User ID=Admin;Password=;Extended properties=Excel 8.0)...UE_Inter_f
2007-04-27 21:08:00 7758
原创 在sqlplus下从oracle数据库中 查询表结构 的数据 并输出的 过程
oracle中存储表中的属性名称的系统表是dba_tab_columns;可以从这个表中查处所有的属性名称,set pagesize 0 --设置页面大小,0表示无限制,如果设置为10,则10行数据后一个空行; set num 18;设置数字的长度,如果不够大则用科学计数法; set heading off;设置不要题头, set feedback off;设置不需要返回信息; set ter
2007-04-27 20:55:00 6034
原创 C++连接MySQL数据库
建立一个空的控制台程序,建立一个cpp文件,在其中加入如下代码。代码部分:#include//定义socket#include#include"mysql.h"//#pragma comment( lib, "libmysql.lib");//此句话和在附加依赖项中增加libmysql.lib 的功能一样 usingnamespace std;int
2007-04-24 22:26:00 13020 2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人