MFC关机小程序

MFC关机小程序,第1张

两个函数,可实现你所说的功能,自己看吧:第五十八个ExitWindowsEx关机,重启,注销计算机函数这个函数只有两个参数,后一个参数为系统预留,填0就可以了,而第一个参数则,指明关机,还是重启,或注销,可选值如下:EWX_LOGOFF//注销 EWX_REBOOT//重启 NT系统中需SE_SHUTDOWN_NAME 特权 EWX_SHUTDOWN//关机,需权限。例子:关闭计算机,由于需要SE_SHUTDOWN_NAME权限,所以我们得先提升权限,代码如下:#include<windowsh>

int main()

{

HANDLE hToken;

TOKEN_PRIVILEGES tkp;

OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES|TOKEN_QUERY,&hToken);

LookupPrivilegeValue(NULL,SE_SHUTDOWN_NAME,&tkpPrivileges[0]Luid);

tkpPrivilegeCount=1;

tkpPrivileges[0]Attributes=SE_PRIVILEGE_ENABLED;

AdjustTokenPrivileges(hToken,FALSE,&tkp,0,(PTOKEN_PRIVILEGES)NULL,0);

::ExitWindowsEx(EWX_SHUTDOWN,0);

return 0;

} 第六十九个RegisterHotKey注册一个热键函数定义:BOOL

RegisterHotKey(

HWND hWnd ,

int id,

UINT fsModifiers,

UINT vk);第一个参数hWnd表明热键消息(HOT_KEY)发送给哪个窗口,为NULL表明直接把消息投递给调用这个函数进程的消息队列。第二个参数可以自定取值,取值范围0xC000-0xFFFF,这个参数是为了程序能同时拥有多个热键而存在。第三个参数fsModifiers的可选取值如下:MOD_ALT(Alt键),MOD_CONTROL(Ctrl键),MOD_SHIFT(Shift键),MOD_WIN(‘田’图标键)

最一个参数是一个ASCII值,指明具体和哪个非系统键组合。

如QQ的热键ctrl+alt+z,注册这个热键的语句是RegisterHotKey(NULL,0x0001,MOD_CONTROL|MOD_ALT,‘Z’)

如QQ的截图热键 RegisterHotKey(NULL,0x0001,MOD_CONTROL|MOD_ALT,'A')例子:按下ctrl+alt+x热键,d出消息提示框,询问是否要退出。//#include "stdafxh" 新建空工程,不需要该头文件

#include<windowsh>

int APIENTRY WinMain(HINSTANCE hInstance,

HINSTANCE hPrevInstance,

LPSTR lpCmdLine,

int nCmdShow)

{

RegisterHotKey(NULL,0x0001,MOD_CONTROL|MOD_ALT,'X');//注册热键

MSG msg;

while(GetMessage(&msg,NULL,0,0))//从消息队伍获取消息

{

if(msgmessage==WM_HOTKEY)//热键消息

{

if(MessageBox(NULL,"你确定要退出程序吗?","热键提示",MB_YESNO|MB_SYSTEMMODAL)==IDYES)

{

UnregisterHotKey(NULL,0x0001);//卸载热键

break;

}

}

}

return 0;

}记得要退出程序

你新建一个MFC文档视图工程的话,它会自动生成一个从CView派生出来的类。比如你创建了一个工程名为my,它会派生出一个CmyWiew类。

在那个派生类的OnDraw(CDC pDC)函数中加入你的绘图代码就OK了,函数有一个参数pDC就是视图界面的设备环境句柄,不用你自己创建,调用pDC->MoveTo(x1,y1),然后再调用pDC->LineTo(x2,y2),这样就画了一条(x1,y1)到(x2,y2)的直线。

昨天跟你说的用CString 类型来写sql语句,假设的你在MFC下写的程序。

我看了下你的代码,貌似不是用的MFC。

你这个程序问题出在

#include "iostream"

#include "afxh"

这2个里好像有重复定义的东西。

那么改一下吧。

第1:

包含头文件里

#include "afxh" 去掉。

第2:

CString sql;

sqlFormat("SELECT FROM userinform where username='%s' and password='%s'",username,password);

m_pRecordset->Open((_bstr_t)sql,m_pConnectionGetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);

改为

string sql;

_bstr_t bstSql;

sql="SELECT FROM userinform where username='"+username+"' and password='"+password+"'";

bstSql=sqlc_str();

m_pRecordset->Open(bstSql,m_pConnectionGetInterfacePtr(),

adOpenDynamic,adLockOptimistic,adCmdText);

你试下看看

以上就是关于MFC关机小程序全部的内容,包括:MFC关机小程序、求一个mfc的小程序 建立一个多文档的工程 然后用cdc随便在文档里画条线就可以了 该怎么做 我做l、有关MFC 能在VC++ 6.0运行的小程序 高手帮忙进来等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/10172594.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-06
下一篇2023-05-06

发表评论

登录后才能评论

评论列表(0条)

    保存