91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 160KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發布日期: 2021-05-07
  • 語言: 其他
  • 標簽: 驅動??DLL??

資源簡介

針式打印機驅動dll,通過pid,vid找到打印機的句柄, 用CreateFile,WriteFile發指令 可實現的套打等功能

資源截圖

代碼片段和文件信息

#include?“PrintDll.h“
#include?
#include?
#include? //CString要用到的頭文件
#pragma?comment(lib??“Setupapi.lib“)
//如果PidVid相同的話,就返回1,否則返回0
//
bool?beSamePidVid(CString?strPath??CString?strPidVid)
{
int?flag?=?strPath.Find(strPidVid);
if?(flag? {
return?false;
}
else
{
return?true;
}
}

//
//初始化得到打印機的句柄
//
HANDLE?GetPrintHandle()
{
HANDLE?hCom;//初始化成功返回句柄
CString?strShow;
CString?strtmp;
CString?strPath;

//定義USB的GUID,具體GUID在哪個頭文件里,還不知道
static?GUID?GUID_DEVINTERFACE_USB_DEVICE?=?
{0xA5DCBF10L??0x6530??0x11D2??0x90??0x1F??0x00??0xC0??0x4F??0xB9??0x51??0xED};

//?準備查找符合HID規范的USB設備
HDEVINFO?hDevInfo?=?SetupDiGetClassDevs(&GUID_DEVINTERFACE_USB_DEVICENULLNULL
DIGCF_PRESENT?|?DIGCF_DEVICEINTERFACE);

//?枚舉查找所有可用的USB設備接口,并找到vid_06BCpid_02F2的特定的USB設備(OKI5500F+)

for?(int?Device_Index=0;;Device_Index++)
{
SP_DEVICE_INTERFACE_DATA?strtInterfaceData;
strtInterfaceData.cbSize?=?sizeof?(SP_DEVICE_INTERFACE_DATA);??
BOOL?bSuccess?=?SetupDiEnumDeviceInterfaces(hDevInfoNULL&GUID_DEVINTERFACE_USB_DEVICE
Device_Index//找到的可用的設備索引號
&strtInterfaceData);
if?(!bSuccess)
{
if?(ERROR_NO_MORE_ITEMS?==?GetLastError())
{
break;
}
}

//第一次調用SetupDiGetDeviceInterfaceDetail??設置第三參數為NULL?,?以獲得長度(參數5)
DWORD?returnsize?=?0;
DWORD?predictedLength?=?0;
SetupDiGetDeviceInterfaceDetail(hDevInfo&strtInterfaceData
NULL0&returnsizeNULL);
predictedLength?=?returnsize;
//第二次調用SetupDiGetDeviceInterfaceDetail?,?
//?若找到了設備,則讀取設備路徑名
SP_DEVICE_INTERFACE_DETAIL_DATA*?pDetailData?=?NULL;
pDetailData?=?(PSP_INTERFACE_DEVICE_DETAIL_DATA)?malloc?(predictedLength);?
pDetailData->cbSize?=?sizeof(SP_DEVICE_INTERFACE_DETAIL_DATA);
if?(!SetupDiGetDeviceInterfaceDetail(hDevInfo&strtInterfaceData
pDetailDatareturnsize&returnsizeNULL))
{
MessageBox(NULL??_T(“查找設備路徑時出錯!“)??_T(“錯誤“)??0);
SetupDiDestroyDeviceInfoList(hDevInfo);
return?INVALID_HANDLE_VALUE?;
}

//?找到了設備路徑

strPath?=?pDetailData->DevicePath;

//找特定的pid,vid
if?(beSamePidVid(strPath??_T(“vid_06bc&pid_02f2“)))
{
break;
}
}

//?用API函數CreateFile與設備通信
hCom?=?CreateFile(strPathGENERIC_WRITE
NULLNULLCREATE_ALWAYSFILE_ATTRIBUTE_NORMALNULL);
if?(hCom?==?INVALID_HANDLE_VALUE)
{
MessageBox(NULL??_T(“無法打開通信端口“)??_T(“錯誤“)??0);
SetupDiDestroyDeviceInfoList(hDevInfo);
return?INVALID_HANDLE_VALUE;
}
return?hCom;
}

//
//釋放句柄
//
void?ReleaseHandle(HANDLE?hCom)
{
::CloseHandle(hCom);
}

//
//設置相對于當前位置的打印位置
//
void?OffSetPosXY(HANDLE?hCom?int?x??int?y)//單位1/60英寸
{
unsigned?long?cnt?=?0;

//先處理Y坐標,在X坐標
char?YPos[3]?=?{0x1B??0x4A??0x00};
int?LineNum?=?0;?//需要換多少個85/60英寸 //整步
int?LineRem?=?0;?//需要換多少個1/60英寸 //小碎步
y?=?y?*?3;

//如果當前換行數超過255(單位1/180英寸),則需要兩次或多次換行
if?(y?>?255)
{
LineNum?=?y?/?255;
LineRem?=?y?%?255;
}
else//沒超

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件???????8385??2014-01-24?13:50??PrintDll\PrintDll.cpp

?????文件???????1765??2014-01-24?13:37??PrintDll\PrintDll.h

?????文件???????1345??2014-01-24?11:47??PrintDll\PrintDll.sln

????..A..H.?????15360??2014-01-26?13:32??PrintDll\PrintDll.suo

?????文件???????3300??2014-01-06?11:07??PrintDll\PrintDll.vcxproj

?????文件???????1067??2014-01-06?11:03??PrintDll\PrintDll.vcxproj.filters

?????文件????????143??2014-01-06?11:02??PrintDll\PrintDll.vcxproj.user

?????文件??????93696??2014-01-24?13:50??TestDll\PrintDll.dll

?????文件???????4256??2014-01-24?13:50??TestDll\PrintDll.lib

?????文件???????3013??2014-01-24?11:45??TestDll\ReadMe.txt

????.......?????67777??2009-08-31?02:31??TestDll\res\TestDll.ico

?????文件????????670??2014-01-24?11:45??TestDll\res\TestDll.rc2

?????文件???????2096??2014-01-24?13:47??TestDll\resource.h

?????文件????????140??2014-01-24?11:45??TestDll\stdafx.cpp

?????文件???????1652??2014-01-24?11:51??TestDll\stdafx.h

?????文件????????234??2014-01-24?11:45??TestDll\targetver.h

?????文件?????106032??2014-01-24?13:47??TestDll\TestDll.aps

?????文件???????2006??2014-01-24?11:45??TestDll\TestDll.cpp

?????文件????????448??2014-01-24?11:45??TestDll\TestDll.h

?????文件??????10934??2014-01-24?13:47??TestDll\TestDll.rc

?????文件???????5990??2014-01-24?12:04??TestDll\TestDll.vcxproj

?????文件???????1988??2014-01-24?11:45??TestDll\TestDll.vcxproj.filters

?????文件????????143??2014-01-24?11:45??TestDll\TestDll.vcxproj.user

?????文件???????4797??2014-01-24?13:47??TestDll\TestDllDlg.cpp

?????文件????????889??2014-01-24?13:47??TestDll\TestDllDlg.h

?????目錄??????????0??2014-01-26?14:55??PrintDll\Debug

?????目錄??????????0??2014-01-26?14:55??TestDll\Debug

?????目錄??????????0??2014-01-24?11:45??TestDll\res

?????目錄??????????0??2014-01-26?14:55??PrintDll

?????目錄??????????0??2014-01-24?13:47??TestDll

............此處省略3個文件信息

評論

共有 條評論