windows编程
文章平均质量分 62
Restart_2013
这个作者很懒,什么都没留下…
展开
-
VS2008如何将变量和控件相关联
使用VS2008开发MFC,比如说想将一个变量m_num关联到ID为IDD_EDIT1的edit control控件上。(1)首先找到资源视图(视图——资源视图),打开IDD_EDIT1所在的Dialog。(2)然后在此控件上右击,弹出一个菜单,点击选项“添加变量”,弹出一个对话框:(3)最后根据你的需要设置此变量,点击按钮“完成”即可。(4)查看代码,可发转载 2013-06-17 18:07:03 · 2675 阅读 · 0 评论 -
安装SDK2003并且编译Ghost
下载到同一个目录下,如:D:\VC6.0\SDK20031、进入命令行方式,进入D:\VC6.0\SDK20032、输入PSDK-FULL.bat D:\SDK2003第2步是将文件再解压到D:\SDK2003目录下,路径之间不能有空格,目录不存在的情况会自动创建。3、运行D:\SDK2003中的setup.exe来安装SDK。4、记得点 Windows Install SDK原创 2013-09-22 22:19:30 · 874 阅读 · 0 评论 -
dll动态链接库(2)---入口函数DllMain
1、动态库导出函数的查看:使用Vc++自带的Depends工具进行查看,但是只能看到函数的名字,具体的函数参数及返回值看不到,所以要把动态库导出函数声明的头文件(.h文件)打包给> 。2、新建DLL工程:大家在新建工程向导过程中,不要选择 “使用MFC” 选项,如果选上的话,会把DLL变为MFC规则DLL,就是我们上节课讲的第二种动态链接库。3、DLL程序入口点函数原创 2013-09-02 19:54:49 · 4148 阅读 · 0 评论 -
dll动态链接库(1)
1、库类型动态链接库:dll类型,静态链接库:lib类型;2、动态库简介:动态链接库可以看成是一种仓库,一种资源的集合:函数,变量,类,资源……都可以由动态链接库来导出。3、动态库与静态库的区别:a、静态库中的代码会直接塞到EXE中,而动态库则可以被EXE动态的加载或卸载;b、静态库中不能再包含其他的动态或静态库,而动态库则可以。4、实现方式原创 2013-09-02 19:51:50 · 980 阅读 · 0 评论 -
dll动态链接库(5)---进程注入
BOOL Inject(LPCTSTR szModule, DWORD dwID) //dwID为进程id{ HANDLE hProcess = OpenProcess(PROCESS_QUERY_INFORMATION | PROCESS_CREATE_THREAD | PROCESS_VM_OPERATION | PROCESS_VM_WRITE, FALSE, dwID); if (原创 2013-09-02 20:06:54 · 964 阅读 · 0 评论 -
dll动态链接库(4)---MFC规则DLL
1、MFC规则DLL特点:●DLL内部可以使用MFC类库;●可以被其他所有支持DLL技术的语言所调用。2、MFC规则DLL的入口点函数:默认情况下DLL的入口点函数都是DllMain,MFC规则DLL也不例外,但是因为是支持MFC的,所以在MFC规则DLL中,DllMain函数已经被MFC所封装,所以在你的工程中是看不到DllMain函数的,就好像在MFC对话框工程中你找不原创 2013-09-02 20:01:16 · 692 阅读 · 0 评论 -
dll动态链接库(3)---函数调用方式
1、隐式链接:隐式链接的特点是由编译器完成对DLL的加载和程序结束时对DLL的卸载工作,如果程序结束时如果还有其他应用程序使用该DLL,那么系统会使DLL的使用计数减1,当DLL的使用计数降为0时,会将DLL从内存中删除。★优缺点:隐式链接DLL的方法简单实用,但缺少灵活性。■使用方法:使用隐式链接DLL开发时,首先,需要将DLL的引入库文件(*.lib--编译生成DLL时,会一起生成原创 2013-09-02 19:57:50 · 807 阅读 · 0 评论 -
进程快照(获取进程名称、路径、ID、提权)
///////////////////////////////////////////////////////////////// 02ProcessList.cpp文件#include "stdafx.h"#include #include // 声明快照函数的头文件// GetModuleFileNameEx 函数少不了下面两句#include #pragma comme原创 2013-09-01 16:32:57 · 1467 阅读 · 0 评论 -
静态库的编写
1 lib文件的编写#include "stdafx.h"extern "C" int add(int a, int b);int add(int a, int b){return (a+b);}2 测试程序#include "stdafx.h"#pragma comment(lib, "..//debug//SLib.lib原创 2013-09-01 11:52:17 · 542 阅读 · 0 评论 -
临界区 事件 互斥锁 信号量 编程总结
// 1 临界区#include #include #include BOOL g_bContinue = TRUE;int g_nCount1 = 0;int g_nCount2 = 0;CRITICAL_SECTION g_cs; // 对存在同步问题的代码段使用临界区对象UINT __stdcall ThreadFunc(LPVOID);int main(int a原创 2013-08-17 18:13:39 · 634 阅读 · 1 评论 -
BeginPaint&&GetDc
BeginPaint&&GetDc(转)这是个windows编程问题。第一种情况显示出来的字很正常。case WM_PAINT: gdc = BeginPaint (hwnd, &ps); TextOut (gdc, 0, 0, s, strlen (s)); EndPaint (hwnd, &ps);转载 2013-08-10 11:59:21 · 445 阅读 · 0 评论 -
dll 编程的几种方法总结
方法一1 (vc6.0)创建一个空的动态链接库工程,在工程中添加dll_1.cpp文件 在dll_1.cpp文件中输入如下代码,让后编译,在debug目录 下回生成dll_1.dll和dll_1.lib文件#define EXPORT __declspec(dllexport)EXPORT int add(int a, int b){ return (a+b);}原创 2013-08-06 15:54:06 · 810 阅读 · 1 评论 -
GnuWin32提示diff不是内部或者外部命令
重现安装步骤:1、下载软件:只用了diffutils-2.8.7-1.exe以及patch-2.5.9-7-setup.exe。大家可以使用别的版本。2、安装软件:这里安装到 D:\Program Files (x86)\GnuWin323、设置host:进入到C:\Windows\System32\drivers\etc,添加:192.168.1.100svnhost转载 2013-06-29 16:49:10 · 973 阅读 · 0 评论 -
MFC添加鼠标右键菜单消息
1 添加一个子菜单资源IDR_MENU12 添加 WM_CONTEXTMENU 消息,在消息相应函数中添加如下:void CwinMsgDlg::OnContextMenu(CWnd* /*pWnd*/, CPoint point){ CMenu menu; VERIFY(menu.LoadMenu(IDR_MENU1)); //IDR_MENU1为菜单ID CMen原创 2013-07-11 00:43:44 · 1462 阅读 · 0 评论 -
Win32 api编程模板和 加速键编程例子
A 加速键编写过程1)在资源中刚添加 Accelerator, 然后再资源编辑器中编辑 格式:加速键ID ACCELERATORSBEGIN 键名, 命令ID, [,类型] [,选项] ……END// 用Ctrl+F1键控制 file openIDC_PEDUMP ACCELERATORS BEGIN VK_F1, IDM_FILE原创 2014-03-13 15:51:18 · 603 阅读 · 0 评论