前段时间在XP下成功控制打印机,现在总是不行,不知道回忆这些的代码是否被有问题?
HANDLE hPort1
hPort1 = CreateFile(_T("\\\\.\\LPT1"), GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, 0, NULL);
if(hPort1 == INVALID_HANDLE_VALUE) return;
PrintString("....");void CPrintSetupDialog::PrintString(CString DataToWrite)
{
DWORD lrc;
char *tmpChar;
if(hPort1==0) return;
tmpChar = DataToWrite.GetBuffer(0);
WriteFile(hPort1, tmpChar,DataToWrite.GetLength(), &lrc, NULL);
DataToWrite.ReleaseBuffer();
}
HANDLE hPort1
hPort1 = CreateFile(_T("\\\\.\\LPT1"), GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, 0, NULL);
if(hPort1 == INVALID_HANDLE_VALUE) return;
PrintString("....");void CPrintSetupDialog::PrintString(CString DataToWrite)
{
DWORD lrc;
char *tmpChar;
if(hPort1==0) return;
tmpChar = DataToWrite.GetBuffer(0);
WriteFile(hPort1, tmpChar,DataToWrite.GetLength(), &lrc, NULL);
DataToWrite.ReleaseBuffer();
}
你可以在网上找找winIO这个dll库,它是一个驱动的咚咚,可以控制打印机并口。
在往年的程序员杂志上有一个篇相应的介绍文章。