MFC
空中海
这个作者很懒,什么都没留下…
展开
-
如何动态加载DLL文件
如果想要在程序运行时加载动态链接库并调用里边的函数。 1定义一个函数指针 typedef int(*Fun)(int); Fun fun; 2加载动态链接库 HINSTANCE hInstLibrary=LoadLibrary(L"factorial.dll");//加载动态链接库 if(hInstLibra原创 2013-04-25 05:45:29 · 1187 阅读 · 0 评论 -
MFC皮肤加载例子和皮肤使用方法
实例程序中使用方法: 1、将SkinPPWTL.lib skinppwtl.dll SkinPPWTL.h三个文件及相应皮肤拷贝至工程文件夹下的Skin文件夹下 2、在StdAfx.h文件中加入#include "./Skin/SkinPPWTL.h" // //.. #endif // _AFX_NO_AFXCMN_SUPPORT #include "SkinPPWTL.h"原创 2014-01-23 19:45:19 · 3803 阅读 · 0 评论 -
静态库的调用方法
1.包含静态库对应的头文件 2.#pragma comment(lib,"XXXX.lib") //静态库文件名 XXXX.lib 3.调用静态库中的函数原创 2014-01-23 19:42:43 · 1090 阅读 · 0 评论 -
怎样把对话框刷成指定的颜色
CPaintDC dc(this); CBrush *pBrush = CBrush::FromHandle((HBRUSH)GetStockObject(BLACK_BRUSH)); CBrush *pOldBrush=dc.SelectObject(pBrush); CRect rect; GetClientRect(&rect); dc.R原创 2013-04-25 06:06:52 · 626 阅读 · 0 评论 -
屏蔽Ctrl+Alt+Delete组合键的方法
如果想要屏蔽组合键必须使用全局钩子 创建一个全局钩子,创建钩子SetWindowsHookEx(WH_KEYBOARD_LL,(HOOKPROC)keyboardProc,pinstance,0);//挂上钩子 如果想要使用WH_KEYBOARD_LL这个参数,必须在windowNT系统下,如果想要在windowXP中使用,就要在工程的stdafx.h文件里加入两个宏 #define原创 2013-04-25 06:05:56 · 5073 阅读 · 0 评论 -
mfc 查找线程获取程序的线程ID,判断线程是否启动
// bool CStudentComputerControl::FindProcess(CString ProcessName) { HANDLE handle=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0); PROCESSENTRY32* info=new PROCESSENTRY32; info->dwSize=sizeof(原创 2013-04-25 06:04:18 · 2375 阅读 · 0 评论 -
MFC 重启计算机
HANDLE hToken; TOKEN_PRIVILEGES tkp; OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken); LookupPrivilegeValue(NULL,SE_SHUTDOWN_NAME,&tkp.Privileges[0].Luid); tkp.原创 2013-04-25 06:01:15 · 1209 阅读 · 0 评论 -
创建文件夹
g_SaveVedioPath="E:\\Capfile\\"; for ( i=0;i { CString SavePath=g_SaveVedioPath; CFileFind finder; if (!finder.FindFile(SavePath)) { ::CreateDirectory(SavePath,NULL原创 2013-04-25 05:58:43 · 646 阅读 · 0 评论 -
DLL中导出函数的方法
从DLL中导出函数一般有三种方法: 1 使用DEF文件,它是一个包含描述动态链接库不同属性模块语句的文本文件,如果在程序中不使用_declspec(dllexport)关键字输出DLL函数,则必须有一个DEF文件。 DEF文件中一般包含以下的语句: NAME:主输出程序或动态链接库文件名 LIBRARY:该语句指出动态链接库的内部名字,只是连接器生成动态链接库。 DESCRI转载 2013-04-25 05:55:19 · 1369 阅读 · 0 评论 -
MFC 把自己写的程序设置成开机启动
//写入注册表 设置本程序的开机启动 CString sPath; GetModuleFileName(NULL,sPath.GetBufferSetLength(MAX_PATH+1),MAX_PATH); sPath.ReleaseBuffer(); LPSTR lpPath=(LPSTR)(LPCTSTR)sPath; HKEY hkey=NULL;原创 2013-04-25 06:03:10 · 955 阅读 · 0 评论 -
程序中用代码关闭计算机
HANDLE hToken; TOKEN_PRIVILEGES tkp; OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken); LookupPrivilegeValue(NULL,SE_SHUTDOWN_NAME,&tkp.Privileges[0].Luid); tkp.原创 2013-04-25 06:00:33 · 949 阅读 · 0 评论 -
创建全局钩子
extern "C" LRESULT CALLBACK keyboardProc(int code, WPARAM wparam,LPARAM lparam)//钩子处理函 { return 1; } extern "C" bool WINAPI starthook()//启动钩子函数 { //WH_KEYBOARD_LL(底层钩子,要能使用必须在stdafx.h文件里加入原创 2013-04-25 05:59:31 · 953 阅读 · 0 评论 -
静态库编写方法
VC新建一个Win32 Static Library工程LibTestModel 添加两个文件: LibTest.h和LibTest.cpp //LibTest.h文件中添加代码 #ifndef LIB_H #define LIB_H extern "C" int add(int x,int y); //声明为C 编译、连接方式的外部函数 #endif //在LibTest.c原创 2014-01-23 19:37:17 · 630 阅读 · 0 评论