- 博客(37)
- 资源 (58)
- 收藏
- 关注
原创 木马编写小技巧(转)
1.锁定鼠标:这个功能很简单只要一个ClipCursor()就可以搞定了看看下面的小程序#include #include int main(int argc, char* argv[]){ printf("\n别害怕15妙后你的鼠标就可以使用了^_^\n"); RECT rect; rect.bottom=1; rect.right=1; ClipCurso
2012-11-28 13:08:21 3643 22
原创 保存屏幕BMP
HBITMAP CopyScreenToBitmap(LPRECT lpRect){ //屏幕和内存设备描述表 HDC hSrcDC, hMemDC; //位图句柄 HBITMAP hBitmap, hOldBitmap; //选定区域坐标 int nX, nY, nX2, nY2; //位图宽度和高度 int nWidth, nHeight; //屏幕分辨率
2012-11-28 11:40:25 1546
原创 vc2010转化vc2005或低版本VC过程后,编译错误 解决方法
转化为vc2010后,出现以下错误:“C:/Program Files/Microsoft Visual Studio 10.0/VC/atlmfc/include/atlcore.h(35): fatal error C1189: #error : This file requires _WIN32_WINNT to be #defined at least to 0x0403. Valu
2012-11-28 09:31:54 1591
原创 VC程序播放音乐必备---mciSendString用法
使用MCI API,源文件中需要包含头文件 Mmsystem.h,在Project->Settings->Link->Object/libray module中加入库 Winmm.lib。 VS2008在源文件加上#include "mmsystem.h" #pragma comment(lib,"winmm.lib")1、MCI简介 MCI(Media Con
2012-11-27 19:43:13 12750 1
原创 用标准C编写COM(七)COM in plain C,Part7
原文:http://www.codeproject.com/Articles/15037/COM-in-plain-C-Part-7拥有自定义COM对象的ActiveX脚本宿主允许在你的应用程序中调用C函数。 下载例程- 380 Kb内容 简介 声明自定义对象 我们的IDL文件和类型库 向引擎注册我们的COM对象 脚本如何调用我们COM对象的函
2012-11-25 20:31:48 4600
原创 隐藏程序在任务栏的图标
今天想最小化的时候在任务栏上隐藏窗体图标,想了很多方法不行,结果这行代码解决了问题,备忘下。对话框程序放OnInitDialog()函数: SetWindowLong(this->m_hWnd,GWL_EXSTYLE,WS_EX_TOOLWINDOW);//隐藏任务拦按钮 需要改变会原来这需要这样设置下: SetWindowLong(hWnd,GWL_EXSTYLE, WS_EX_
2012-11-25 11:52:54 4211 2
原创 (转)程序员怎么才能提高代码编写速度?
觉得很实用就转载了,方便提醒自己。原文:http://justjavac.iteye.com/blog/1659649这里编写速度指的是把代码敲入编辑器的速度,而不包括程序构思过程。我现在感觉自己敲代码很慢,10 个字母里面会出现 2 个字母打错。尤其是一些特殊符号,比如 ,我使用的是搜狗,搜狗和英文切换是 shift 键,但有时候极容易弄错所处状态,很少去观察是中文状态还
2012-11-24 12:52:57 2704 2
原创 C语言可变参数函数探秘
一直以来习惯了使用printf函数,但是对于可变参数没有深入研究过,觉得可变参数是一个神奇的技术。想研究研究看可变参数的使用和原理。目前C提供的可变参数的申明为void function(const char *format, ...);这样就可以在function中使用可变参数C提供了几个宏用于使用可变参数va_listva_startva_argva_endC函数要在程序中用
2012-11-22 21:37:56 2321 2
原创 CoCreateInstance具体内部实现
CoCreateInstance(....) { //....... IClassFactory *pClassFactory=NULL; CoGetClassObject(CLSID_Object, CLSCTX_INPROC_SERVER, NULL, IID_IClassFactory, (void **)&pClassFactory); p
2012-11-22 09:11:35 7551 2
原创 Windows编程命名规则(转)
由于一直在命名方面很乱,这次决定好好规范下。转载至:http://blog.sina.com.cn/s/blog_52cbfc3f0100fdy6.html匈牙利命名法是一种编程时的命名规范。基本原则是:变量名=属性+类型+对象描述。其中每一对象的名称都要求有明确含义,可以取对象名字全称或名字的一部分。命名要基于容易记忆容易理解的原则。目前在Windows程序开发和MFC程序开发中常用的命
2012-11-18 21:36:26 3861
原创 windows核心编程---UNICODE和ANSI间的相互转换
UNICODE和ANSI间的相互转换 ,主要通过以下两个函数进行转换:MultiByteToWideChar和WideCharToMultiByte。MultiByteToWideChar函数功能:该函数映射一个字符串到一个宽字符(unicode)的字符串。由该函数映射的字符串没必要是多字节字符组。函数原型:int MultiByteToWideChar(
2012-11-18 20:18:47 3169
原创 windows核心编程---StringCbCopy和StringCchCopy 函数
StringCbCopy函数用于拷贝string,且提供了目标缓冲区的大小作为参数,防止缓冲区溢出等安全问题。这个函数可用于替换以下函数的使用:strcpy, wcscpy, _tcscpylstrcpyStrCpyStringCbCopy函数原型如下:HRESULT StringCbCopy( __out LPTSTR pszDest, //目标字符串缓冲区
2012-11-17 15:30:07 15869 1
原创 用标准C编写COM(六)COM in plain C,Part6
原文:http://www.codeproject.com/Articles/14905/COM-in-plain-C-Part-6如何用C编写ActiveX Script Host。下载例程-305Kb内容 简介 选择、打开引擎 我们的IActiveScriptSite对象 VBScript例程 初始化引擎 向引擎添加脚本 运
2012-11-17 10:36:26 4868 1
原创 windows核心编程---CompareString函数
CompareString The CompareString function compares two character strings, using the specified locale.int CompareString( LCID Locale, // locale identifier DWORD dwCmpFlags, //
2012-11-13 12:59:41 7753
原创 windows核心编程---错误处理
如果我们自己写程序的时候检测到一个错误的时候,可能希望向用户显示错误的文本表述,而不是一个干巴巴的错误代码windows提供了一个函数可以将错误代码转换成错误文本描述,这个函数是FormatMessage。 TheFormatMessage function formats a message string. The function requires a message defi
2012-11-12 20:14:12 2414
原创 使用批处理添加受信任站点和设置ie安全级别
比如说我们要把www.baidu.com 、.google.com添加到客户的受信任站点蓝色部分后面有www(baiud.com\www)的为www.baidu.com 不加的话默认为*例:*.google.com"红色部分为可修改的协议:例如:"http","ftp"等其它名称。代码如下:reg add "HKEY_CURRENT_USER\Software\Microsof
2012-11-12 10:23:20 39492 4
原创 工具栏和状态栏——模仿windows记事本程序Part3
工具栏 可以用CreateToolbarEx()创建一个工具栏,但在这里不这样用.第一件事情就是要实际地创建一个工具栏... hTool = CreateWindowEx(0, TOOLBARCLASSNAME, NULL, WS_CHILD | WS_VISIBLE, 0, 0, 0, 0, hwnd, (HMENU)IDC_MAIN_TOOL,
2012-11-10 19:51:07 4890 8
原创 用标准C编写COM(五)COM in plain C,Part5
原文:http://www.codeproject.com/Articles/14183/COM-in-plain-C-Part-5添加连接对象(源、接收器)下载例程-246Kb内容 简介 在COM对象中封装回调函数 IConnectionPointContainer和IConnectionPoint对象 C应用程序例程 添加脚本语言支持
2012-11-09 17:55:05 5336 2
原创 vc动态遍历word中的书签名(使用自动化接口)
首先定义几个函数,主要用于动态获取接口属性和方法:STDMETHODIMP CTestntkoView::GetProperty(LPDISPATCH pDisp, LPOLESTR pszName, VARIANT* pvResult){ if (NULL == pDisp) return E_POINTER; DISPID dwDispID; DISPPARAMS dis
2012-11-08 10:14:11 4184
原创 COM 组件设计与应用(八)——实现多接口
本文摘自:http://www.vckbase.net/index.php/wv/1219一、前言 从第五回开始到第七回,咱们用 ATL 写了一个简单的 COM 组件,之所以说简单,是因为在组件中,只实现了一个自定义(custom)的接口 IFun。当然如果想偷懒的话,我们可以把 200 个函数都加到这一个接口中, 果真如此的话,恐怕就没有人喜欢使用我们这个组件
2012-11-07 17:09:45 3705
原创 COM 组件设计与应用(七)——编译、注册、调用
本文摘自:http://www.vckbase.net/index.php/wv/1218一、前言上两回中,咱们用 ATL 写了第一个 COM 组件程序,这回中,主要介绍编译、册和调用方法。示例程序你已经下载了吗?如果还没有下载,vc6.0 的用户点,vc.net 的用户点这里。二、关于编译2-1 最小依赖“最小依赖”,表示编译器会把 A
2012-11-07 16:25:57 2675
原创 使用文件和通用对话框——模仿windows记事本程序Part2
通用文件对话框 最常用的打开和保存文件的对话框分別通过GetOpenFileName()和GetSaveFileName()来调用, 它们两个都要一个OPENFILENAME结构体作参数.OPENFILENAME ofn;char szFileName[MAX_PATH] = "";ZeroMemory(&ofn, sizeof(ofn));
2012-11-07 15:50:31 1921
原创 动态创建控件——模仿windows记事本程序Part1
创建控件 正如创建所有其它的窗口一样,创建控件使用CreateWindowEx()这个API.将想要的已注册的类传进去,这里是编辑框控件类,这样就得到一个标准的编辑框控件窗口. 当用对话框来创建控件时,一般要写下要创建的控件的清单,以便在你调用DialogBox()或CreateDialog()的时候系统可以在对话框的资源中读入控件的列表并调用CreateWindo
2012-11-06 13:16:42 1550
原创 无模态对话框
现在来看看CreateDialog(),它是DialogBox()的姐妹函数.区別在于DialogBox()拥有自己的消息循环并且直到对话框关闭才返回,CreateDialog()则更加像CreateWindowEx()创建的一个窗口,立即返回并向你的消息循环发送消息,就像是你的主窗口发的消息样.这就是所谓的无模态,而DialogBox()创建的是模态对话框. 创建的资源如下:
2012-11-05 11:47:04 2472
原创 VC创建模态对话框
模态窗口的创建由DialogBox()函数。首先定义几个id:#define ID_FILE_EXIT 900#define ID_STUFF_GO 9002#define ID_HELP_ABOUT 9003#define IDD_ABOUT 101对话框的资源文件如下://////////////////////////////////////////
2012-11-05 07:48:11 2676
原创 VC 动态添加资源项
图标的代码相当简单,调用LoadImage()两次,装入了16*16和32*32两种大小的图标.我们这里不能用LoadIcon()因为它只能装入资源,而不能装入文件.我们把实例句柄参数写成了NULL因为我们不是从我们的模块装入资源,而且我们不用资源的标识而使用了我们要装入的图标文件名.最后我们传入了LR_LOADFROMFILE这个标志来指示我们需要这个函数将我们传入的字符串当作文件名而不是资源名
2012-11-04 21:19:27 3380
原创 HRESULT 解密
百度百科中的定义 函数返回值。如果这个函数是执行完返回的话将包含具有实际意义的数据,如果立即返回则包含状态信息--发送成功与否,并不能说明执行的如何。 HRESULT A value returned from a function call to an interface, consisting of a severity code,
2012-11-04 15:13:04 3320 1
原创 用补码表示整数及加减运算
本次我组主要是想通过运用补码来表示整数,我主要的工作是将十进制整数转化成补码及其加减运算和溢出的讨论。一、原理人类习惯使用十进制数进行数值计算,而计算机则采用二进制,所以为了让计算机帮助人类计算,首先要把十进制数转换为二进制数。本次说明以最简单的8位定点整数为例,分析了计算机存储和计算数值的方法。整数有正负之分,但计算机却只认得“0”“1”,不知道符号“+”和“-”,所
2012-11-04 13:42:13 11350
原创 关于24点游戏的编程思路与基本算法
24点游戏的算法,其中最主要的思想就是穷举法。所谓穷举法就是列出4个数字加减乘除的各种可能性,包括括号的算法。我们可以将表达式分成以下几种:首先我们将4个数设为a,b,c,d,,其中算术符号有+,-,*,/,。其中有效的表达式有a,ab-cd,等等。列出所有有效的表达式。其中我们用枚举类型将符号定义成数字常量,比如用1表示+,2表示-等。如下是我对穷举法的一种编程语言。在编程的头部要对变量做下定义
2012-11-04 13:25:40 80867 13
原创 补码 原码 反码
数在计算机中是以二进制形式表示的。数分为有符号数和无符号数。原码、反码、补码都是有符号定点数的表示方法。一个有符号定点数的最高位为符号位,0是正,1是副。以下都以8位整数为例,原码就是这个数本身的二进制形式。例如0000001 就是+11000001 就是-1正数的反码和补码都是和原码相同。负数的反码是将其原码除符号位之外的各位求反[-3
2012-11-04 12:33:52 1520
原创 用标准C编写COM(四)COM in plain C,Part4
原文:http://www.codeproject.com/Articles/14117/COM-in-plain-C-Part-4用C构造多接口的COM对象下载例程-194kb内容 在我们的对象中嵌入子对象 应用程序获取基对象的方法 应用程序通过基对象获取子对象的方法 应用程序从一个子对象获取另一个子对象的方法 应用程序获得我们集合对象的方法
2012-11-03 17:19:47 8111 4
原创 COM库常用的函数
COM库常用的函数一. 初始化函数1.CoBuildVersion:获取COM库的版本号2.CoInitialize:初始化COM库3.CoUnInitialize:终止CO服务4.CoFreeUnsedLibraries:释放进程中所有不在使用的组件程序二.GUID函数1.IsEqualGUID:判断两个GUID是否相等2.
2012-11-03 07:43:09 4616 4
原创 VC 拖拽文件(快捷方式文件)到控件 (源码)
先介绍下,对对话框需要设置属性:AcceptFile为true;源码工程:下载#include #include #include #include #include "resource.h"LRESULT CALLBACK DialogProc(HWND ,UINT,WPARAM,LPARAM) ;void OnInitDialog(HWND hDlg);void OnO
2012-11-02 20:31:15 2881 4
原创 windows shell 创建快捷方式和读取快捷方式的代码
不说了 直接贴代码:#include #include #include #pragma comment(lib, "comsuppw.lib") struct SHORTCUTSTRUCT{ LPTSTR pszTarget; LPTSTR pszDesc; WORD wHotKey; LPTSTR pszIconPath; WORD wIconIndex;};typ
2012-11-02 19:25:05 4294
原创 LNK2019: 无法解析的外部符号 "wchar_t * __stdcall _com_util::ConvertStringToBSTR(char const *)"解决方案
char * szchar = "xxxxxxx"; BSTR szbstr = _com_util::ConvertStringToBSTR(szchar); SysFreeString(szbstr); MessageBox(NULL,szbstr,TEXT("Test"),MB_OK);使用VS 2010编译一个工程,出现下面一个编译错误:错误 1error LNK201
2012-11-02 10:15:10 7260
原创 控件为何不能自动装载?--全面总结
1、问题表现:当访问引用控件的网页时,控件窗口不会出现,导致相关的引用控件的Javacript语句无法运行。网页上出现类似“无法加载控件,请检查浏览器安全设定”的错误提示,并且可能有JavaScript无法找到对象的错误提示。2、此问题和控件本身无关。为了解决控件不能自动装载的问题,首先来看看浏览器装载对象涉及到的步骤。(暂时不考虑如防病毒软件或者其他过滤工具的影响)
2012-11-01 13:51:53 5127 1
原创 未能导入activex控件,请确保它正确注册"的完美解决方案
这个错误“未能导入activex控件,请确保它正确注册”昨天下午让我和我同事花费了3个小时来调试这个错误,在使用VS2010的winfrom编程时加入com组件的时候,报这个错误(以一个客户的机器上),,同时错误提示“ “AxImp.exe”已退出,代码为 -1163019603。”在网上各种找解决方案,无果。什么“假设你的项目名为123,在Visual Studio 2005(C#)打开你的
2012-11-01 13:37:01 14690 2
MSBuild.rar
2020-06-23
CLR via C#(第4版)中文高清完整PDF
2017-11-30
JavaScript高级程序设计(第3版)
2012-05-20
[Visual.Studio插件].Whole.Tomato.Visual.Assist.X.v10.6.1862.0.
2012-05-09
c++ GUI.Programming.with.Qt.4.
2011-12-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人