📄 apcxapp.cpp
字号:
#include <stdio.h>
#include <windows.h>
#include <winioctl.h>
#include "apcx.h"
PortOption *p;
FILE *fp;
DWORD WINAPI CallBackAPC(PVOID param)
{
p=(PortOption *)param;
fprintf(stderr,"%s %04X %02X\n",p->io==0?"Output":"Input",p->port,p->data);
fprintf(fp,"%s %04X %02X\n",p->io==0?"Output":"Input",p->port,p->data);
return 0;
}
void main()
{
HANDLE hDevice;
fp=fopen("port.log","wt");
hDevice=CreateFile("\\\\.\\CMOSRAM.VXD",0,0,0,CREATE_NEW,FILE_FLAG_DELETE_ON_CLOSE,0);
if (hDevice == INVALID_HANDLE_VALUE)
{
fprintf(stderr,"Cannot load VxD, error=%08ld\n",GetLastError());
exit(1);
}
if (!DeviceIoControl(hDevice,ADDRESSPASS,CallBackAPC,0,0,0,0,0))
{
fprintf(stderr, "Failed to pass address\n");
exit(1);
}
printf("press ctrl-C to exit . . .\n");
while(TRUE) SleepEx(INFINITE, TRUE);
fclose(fp);
CloseHandle(hDevice);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -