- 博客(24)
- 收藏
- 关注
原创 linux下用源码安装subversion
看了很多个安装的文章,解决库依赖的问题大都采用了自己安装。 其实subversion提供了dependent component安装包,比如subversion-deps-1.6.19.tar.gz。 安装时将subversion-1.6.19.tar.gz和subversion-deps-1.6.19.tar.gz放在同一目录下解压(这两个文件http://subversion.apache
2012-11-16 09:42:42 261
原创 使用API进行路由操作
网上也查询了很多个文章,没有一个是完整的列出如何通过API进行路由的操作。 一下编程语言为C++,windows7下测试通过. #include #pragma comment(lib, "Iphlpapi.lib") ULONG getadpterindex(const char *ip) { PIP_ADAPTER_INFO pAdaptersInfo=NULL;
2012-08-15 15:12:49 711 1
原创 MFC背景颜色
<br />HBRUSH CMy111Dlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)<br />{<br /> HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);<br /> COLORREF backColor = RGB(216, 231, 252); //office 2003背景色<br /> pDC->SetBkMode(TRANSPARENT); //设
2010-09-02 22:27:00 406
原创 仿照别人写的键盘HOOK,hoho~~
就这个小破程序还耽误了我两天,我真是太笨了。。。这是一个全局的钩子,需要放在DLL中。关于dll的部分就不说了。#pragma data_seg("simdata")HWND glbPrevWnd = NULL;static HHOOK glbHook = NULL;HINSTANCE glbInst = NULL;FILE * f1;#pragma data_seg()#pragma comm
2006-08-02 15:35:00 783
原创 中文字符打印的api
今天使用结构体SESSION_INFO_1(结构体信息参考MSDN),在打印成员LPWSTR sesi1_cname的时候,遇到中文字符即显示乱码,我靠,又是编码的问题。最终无奈,向身边的研究生请教,得知一函数int WideCharToMultiByte( UINT CodePage, // code page DWORD dwFlags, //
2006-07-24 17:23:00 603
原创 windows帐户的基本管理(包括添加,删除)
#include #include #include #include #include #include #pragma comment (lib,"netapi32.lib")DWORD dwLevel = 1; //定义读取级别void do_NetUserAdd (const char * UserName,wchar_t * ServerNam
2006-07-21 13:08:00 930
原创 NetUserAdd参数转换问题!
昨天使用到API函数NetUserAdd, 虽然注意到它涉及的结构USER_INFO_1的成员有LPWSTR(WCHAR *、wchar_t *),但是尝试了多种方法后仍然不能成功的添加用户,肯定是参数类型的问题。只恨自己平时忽视了这些字符编码规则的问题。问题解决后,总结了一下解决经验和方法。1。要将USER_INFO_1的成员填充完整。示例如下,具体参数参考MSDN。 uiAdd
2006-07-21 11:30:00 1446
转载 关于ANSI 和UNICODE
ANSI字符集是采用单字节表示的,也称为窄字符,是计算机发展初期阶段的编码产物,体现在WIN* 9X及其以前的操作系统中.Unicode字符集是采用双字符节表示的,也称为宽字符,它不但兼容ANSI,而且还包含阿拉伯文,中文拼音,日俄韩等多国文字和大量标点符号. NT系列的2000,2003,XP等操作系统内核都采用Unicode字符集. 使用Unicode编程是发展的必然趋势,ANS
2006-07-11 09:33:00 709
原创 实现参数的多项组合
在API中经常看到一个参数有多个选项,并且所有的选项都可以组合使用。今日看了一个程序,顿悟! 首先在一个类的定义里面声明一个enum,项目为你提供的选项。比如class CMyClass{ enum{TASK_MGR = 0x01, TASK_KEYS = 0x02, TASK_
2006-07-07 11:42:00 621
转载 #pragma data_seg实现程序只启动一次
有的时候我们可能想让一个应用程序只启动一次,就像单件模式(singleton)一样,实现的方法可能有多种,这里说说用#pragma data_seg来实现的方法,很是简洁便利。我们在DLL的实现文件里加入以下声明:#pragma data_seg("flag_data")int __declspec(dllexportt) app_count = 0;#pragma data_seg()#
2006-07-07 10:43:00 731
原创 注册表十大启动项
Windows启动时通常会有一大堆程序自动启动。不要以为管好了“开始→程序→启动”菜单就万事吉,实际上,在Windows XP/2K中,让Windows自动启动程序的办法很多,下文告诉你最重要的两个文件夹和八个注册键。 一、当前用户专有的启
2006-07-06 09:28:00 702
原创 简单的实现注册表的递归遍历
#include #include #include #include #include #include #include char * NumTOSymbol(int SymbolNum){ char *symbol=new char[SymbolNum+1]; memset(symbol,/0,SymbolNum+1); for(int i=0;i strcat(symbol,"-
2006-07-05 10:14:00 798
原创 使用SHDeleteKey需要的头文件
1 . shlwapi.h这个头文件 2 ..在VC菜单中Project->Setting->Link 下面project options的文本框中,输入shlwapi.lib问 (在Code前面加上#pragma comment(lib,"shlwapi.lib"))
2006-06-30 09:48:00 1440
转载 巧破windows xp登陆密码
用DOS启动在命令行里把system32/config的SAM换一个就可以拉输入del c:/windows/system32/config/samcopy c:/windwos/repair/sam (有个空格)c:/windows/system32/config然后重起进入windows有个提示不要管他~~点确定就是了进系统拉如果是2000就用del c:/windows/system32/c
2006-06-27 16:04:00 1487
原创 enum{IDD=IDD_DIALOG_MAIN} undeclared identifier!
郁闷啊,郁闷。 今天打开以前的一个小工程,编译却出现error C2065: IDD_DIALOG_MAIN : undeclared identifier的错误。尝试了更改对话框名称,到resource.h里修改IDD_DIALOG_MAIN的值,都不行。 刚好网上查到更改主对话框的ID名称会同时引起下列文件的修改: 1.resource.h中对话框名称的修改
2006-06-23 10:37:00 3988 3
原创 无法生成lib文件
今儿又搞了个DLL的小程序,要求用模板实现双向链表的类接口。开始无论如何都只能生成dll文件,而没有lib文件。网上找了很多也都没具体的解决方法。有的说要加入DllMain入口函数。但是我昨天也写的一个DLL程序不需要DllMain同样可以编译成功。最后病急乱投医,我加def文件,还是不行。最后在def文件中的EXPORTS后面加了个回车,好了。汗~~还有这样的事情。
2006-06-14 16:14:00 1443
原创 DLL实现导出类时需要注意的
1. 在类的头文件中,为了使类实现文件(类名.cpp)和测试文件能够很好的实现自己的声明方式(即导出还是导入),声明需按以下格式:#ifdef DLL_FILEclass __declspec(dllexport) 类名 ///在类实现文件中定义了DLL_FILE,声明为DLL导出类#elseclass __declspec(dllimport) 类名 ///应用程序文件中未定义DL
2006-06-13 11:37:00 932 1
原创 没有找到NMfcDll_Class.dll
今儿仿照教程写了一个DLL导出类的小程序。DLL编译完成后,我开始并没有把DLL和LIB文件copy到测试工程所在的目录下。只是在测试时导入了相对路径,#pragma comment(lib,"..//Debug//NMfcDll_Class.lib"),结果运行时出现错误,“没有找到NMfcDll_Class,因此这个应用程序未能启动。重新安装应用程序可能会修复此问题。”我晕~~
2006-06-13 11:28:00 584
原创 VC++动态链接库(DLL)编程之MFC扩展DLL
http://www.soft6.com/know/detail.asp?id=BBCJEH&ArticlePage=1
2006-06-13 10:26:00 530
原创 VC++动态链接库编程之MFC规则DLL
http://www.cncsk.com/Document/language/VC++_MFC/200604258112.htm
2006-06-13 10:23:00 668
转载 据说是史上最牛的程序(My god^_^)
e100 33 f6 bf 0 20 b5 10 f3 a5 8c c8 5 0 2 50 68 13 1 cb e 1f be a1 1 bf 0 1 e11b 6 57 b8 11 1 bb 21 13 89 7 4b 4b 48 79 f9 ad 86 e0 8b c8 bd ff ff e8 20 e134 0 3d 0 1 74 1a 7f 3 aa eb f3 2d ff 0 50 e
2006-06-12 10:10:00 569
转载 sockaddr_in sockaddr in_addr区别联系
sockaddr_in sockaddr in_addrstruct sockaddr {unsigned short sa_family; // address family, AF_xxxchar sa_data[14]; // 14 bytes of protocol address};struct sockaddr_in {short int sin_family; // Address
2006-06-12 09:44:00 3284
转载 pragma指令简介
在编写程序的时候,我们经常要用到#pragma指令来设定编译器的状态或者是指示编译器完成一些特定的动作.下面介绍了一下该指令的一些常用参数,希望对大家有所帮助!一. message 参数。 message 它能够在编译信息输出窗口中输出相应的信息,这对于源代码信息的控制是非常重要的。其使用方法为: #pragma message(“消息文本”) 当编译器遇到这条指令时就在编译输出窗
2006-04-18 13:12:00 458
转载 用C++Builder在WINNT下编制一个Service
---- Windows NT与Windows 9x有一个非常重要的区别,即Windows NT提供了很多功能强大的Service(服务)。这些Service可以随着NT的启动而自启动,也可以让用户通过控制面板启动,还可以被Win32应用程序起停。甚至在没有用户登录系统的情况下,这些Service也能执行。许多FTP、WWW服务器和数据库就是以Service的形式存在于NT上,从而实现了无人值守。
2006-04-13 15:00:00 422
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人