- A+
内容
可以使用C语言的Win32 API函数来实现,如下:
#include
#include
int main( int argc, char *argv[] )
{
// 定义缓冲区
char szBuffer[700];
// 打开共享打印机
HANDLE hPrinter = NULL;
if( !OpenPrinter( "SharedPrinterName", &hPrinter, NULL ) )
{
printf( "OpenPrinter failed with error %d\n", GetLastError() );
return 1;
}
// 设置打印作业信息
DOC_INFO_1 DocInfo;
DocInfo.pDocName = "My Document";
DocInfo.pOutputFile = NULL;
DocInfo.pDatatype = "RAW";
// 开始打印作业
HANDLE hJob = NULL;
if( (hJob = StartDocPrinter( hPrinter, 1, (LPBYTE)&DocInfo )) == NULL )
{
printf( "StartDocPrinter failed with error %d\n", GetLastError() );
return 1;
}
// 构造待打印字符串
sprintf( szBuffer, "%s", "This is the 700 characters content.\n");
// 写入打印机缓冲区
DWORD dwBytesWritten = 0;
if( !WritePrinter( hPrinter, szBuffer, 700, &dwBytesWritten ) )
{
printf( "WritePrinter failed with error %d\n", GetLastError() );
return 1;
}
// 结束打印作业
if( !EndDocPrinter( hPrinter ) )
{
printf( "EndDocPrinter failed with error %d\n", GetLastError() );
return 1;
}
// 关闭打印机句柄
if( !ClosePrinter( hPrinter ) )
{
printf( "ClosePrinter failed with error %d\n", GetLastError() );
return 1;
}
return 0;
}
- 微信在线客服
- 这是我的微信扫一扫
-
- 我的微信公众号
- 扫一扫码上服务
-





