-
启用和禁用任务管理器
QString reg = "HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\System";
QSettings pSetRegEdit (reg,QSettings::Format::Registry32Format);
int val = 0;
if(checked){
val = 1;
ui->pushButton_7->setText(u8"启用任务管理器");
}else{
ui->pushButton_7->setText(u8"禁用任务管理器");
}
pSetRegEdit.setValue("DisableTaskMgr",val);
pSetRegEdit.sync();
-
hook使用
#include <Windows.h>
#include <iostream>
using namespace std;
LRESULT CALLBACK mykeyboard(int nCode, WPARAM wParam, LPARAM lParam)
{
KBDLLHOOKSTRUCT *p = (KBDLLHOOKSTRUCT*)lParam;
std::cout<<nCode<<" "<<wParam<<" "<<p->vkCode<<" "<<p->flags<<std::endl;
if (p->vkCode>=0x30&&p->vkCode<=0x39){
// 数字0~9
}
else if(p->vkCode>=0x41&&p->vkCode<=0x5A){
// 字母a~z
}
if (p->vkCode>=0x61&&p->vkCode<=0x7A){
// 字母A~Z
}
//屏蔽
else if ((p->vkCode == VK_TAB) && ((p->flags & LLKHF_ALTDOWN) != 0)){
// ALT+TAB
}
//屏蔽
else if ((p->vkCode == VK_ESCAPE) && ((p->flags & LLKHF_ALTDOWN) != 0)){
// ALT+ESC
}
//屏蔽
else if ((p->vkCode == VK_ESCAPE) && ((GetKeyState(VK_CONTROL) & 0x8000) != 0)){
// CTRL+ESC
}
else if ((p->vkCode == VK_ESCAPE) &&
((GetKeyState(VK_CONTROL) & 0x8000) != 0) &&
((GetKeyState(VK_SHIFT) & 0x8000) != 0)){
// CTRL + SHIFT + ESC
}
else if (p->vkCode == VK_LWIN || p->vkCode == VK_RWIN){
// 左右WIN键
}
//此处无法屏蔽CTRL+ALT+DEL,已在SAS window中屏蔽
else if ((p->vkCode == VK_DELETE) &&
((GetKeyState(VK_CONTROL) & 0x8000) != 0) &&
((GetKeyState(VK_MENU) & 0x8000) != 0 )){
// CTRL+ALT+DEL
}else{
CallNextHookEx(NULL, nCode, wParam, lParam);
}
return 1;
}
HHOOK mouseHook;
void MainWindow::on_pushButton_4_clicked()
{
return ;
mouseHook = SetWindowsHookEx(WH_KEYBOARD_LL, mykeyboard, 0, 0);
std::cout<<mouseHook<<endl;
}
C++与emoji
Unicode – The World Standard for Text and Emoji
https://unicode.org/emoji/charts/emoji-list.html
Qt下显示emoji表情
int pEj[2][2]={{0x1F602,0x1F64F},{0x1F910,0x1F979}};
for(int i = 0 ; i < 2 ; i++){
for(int j = pEj[i][0] ; j < pEj[i][1] ; j++){
char32_t* pr = (char32_t*) &j;
cursor.insertText(QString::fromStdU32String(pr));
}
}
cmd-连续执行多条命令用&& 连接多条命令
D:\hi>mkdir ccc && cd ccc
D:\hi\ccc>
命令 作用 举例
& 无条件执行&后的命令 cmd1 & cmd2 即cmd1,cmd2都会执行
&& 成功后执行 cmd1 && cmd2 即若cmd1执行成功则执行cmd2
|| 失败后执行 cmd1 || cmd2 即若cmd1执行失败则执行cmd2