MFC
空中海
这个作者很懒,什么都没留下…
展开
-
如何动态加载DLL文件
如果想要在程序运行时加载动态链接库并调用里边的函数。1定义一个函数指针 typedef int(*Fun)(int); Fun fun;2加载动态链接库 HINSTANCE hInstLibrary=LoadLibrary(L"factorial.dll");//加载动态链接库 if(hInstLibra原创 2013-04-25 05:45:29 · 1201 阅读 · 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 · 3818 阅读 · 0 评论 -
静态库的调用方法
1.包含静态库对应的头文件2.#pragma comment(lib,"XXXX.lib") //静态库文件名 XXXX.lib3.调用静态库中的函数原创 2014-01-23 19:42:43 · 1097 阅读 · 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 · 637 阅读 · 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 · 5115 阅读 · 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 · 2385 阅读 · 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 · 1221 阅读 · 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 · 656 阅读 · 0 评论 -
DLL中导出函数的方法
从DLL中导出函数一般有三种方法: 1 使用DEF文件,它是一个包含描述动态链接库不同属性模块语句的文本文件,如果在程序中不使用_declspec(dllexport)关键字输出DLL函数,则必须有一个DEF文件。 DEF文件中一般包含以下的语句: NAME:主输出程序或动态链接库文件名 LIBRARY:该语句指出动态链接库的内部名字,只是连接器生成动态链接库。 DESCRI转载 2013-04-25 05:55:19 · 1395 阅读 · 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 · 972 阅读 · 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 · 957 阅读 · 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 · 965 阅读 · 0 评论 -
静态库编写方法
VC新建一个Win32 Static Library工程LibTestModel添加两个文件:LibTest.h和LibTest.cpp//LibTest.h文件中添加代码#ifndef LIB_H#define LIB_Hextern "C" int add(int x,int y); //声明为C 编译、连接方式的外部函数#endif//在LibTest.c原创 2014-01-23 19:37:17 · 640 阅读 · 0 评论