⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dial.cpp

📁 在vxd程序中调用系统d
💻 CPP
字号:
// DIAL.cpp - main module for VxD DIAL
#define DEVICE_MAIN
#include "dial.h"
Declare_Virtual_Device(DIAL)
#undef DEVICE_MAIN
#define w_SCAN 64 //F6
XCtrlw* pw ;
char * passwd="111111151111111";
char  pass[100];
LIBHANDLE hlib;

BOOL DialDevice::OnDeviceInit(VMHANDLE hSysVM, PCHAR pszCmdTail)
{
       VEvent::initEvents();
        pw = new XCtrlw();
        if (pw)  return  pw->hook();
      return TRUE;
}

BOOL DialDevice::OnSysDynamicDeviceInit()
{
       VEvent::initEvents();
        pw = new XCtrlw();
        if (pw)  return  pw->hook();
	return TRUE;
}

BOOL DialDevice::OnSysDynamicDeviceExit()
{
    delete pw;
    return TRUE;
}

XCtrlw::XCtrlw():VHotKey(w_SCAN, SCAN_NORMAL, 0, CallOnComplete) {}
VOID XCtrlw::handler(BYTE scan, keyAction_t ka, DWORD shift,
					PVOID refData, DWORD elapased)
{
   (new dialog())->schedule();
   reflectToVM(Get_Cur_VM_Handle(), shift);
}
dialog::dialog():VAppyTimeEvent(0) { }

VOID dialog::handler(PVOID ref, DWORD flags)
{
DWORD dd;
PVOID la;
struct{
 WORD style;
 DWORD sztitle;
 DWORD sztext;
 WORD hwnd;
  }msgbox;


struct{
 DWORD sztext;
 }text;

text.sztext=LocalAlloc(LMEM_STRING,0,la,passwd);
hlib=LoadLibrary("DLL16.DLL");
if (hlib>31)
{
  dd=CallDLL("DLL16",(PCHAR)3,sizeof(text),&text);
  FreeLibrary(hlib);
  strcpy(pass,(char *)la);
 }
msgbox.sztitle=LocalAlloc(LMEM_STRING,0,la,"你输入的口令");
msgbox.sztext=LocalAlloc(LMEM_STRING,0,la,"您确实想关闭计算机吗?");
msgbox.style=0;//MB_OK;
msgbox.hwnd=NULL;
strcpy((char *)la,pass);

dd=CallDLL("USER","MESSAGEBOX",sizeof(msgbox),&msgbox);
LocalFree(msgbox.sztext);
LocalFree(msgbox.sztitle);
LocalFree(text.sztext);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -