设置网络打印机 OpenPrinter失败

aviva330 2010-06-13 03:23:30
其实就是一个权限问题。我需要设置一台局域网中的共享打印机的默认设置。但是我调用API OpenPrinter的时候会失败。获取本地的打印机就没这个问题。 报错是:ERROR_ACCESS_DENIED 5 Access is denied. 代码如下。
HANDLE hPrinter = NULL;
DWORD dwNeeded = 0;
PRINTER_INFO_2 *pi2 = NULL;
DEVMODE *pDevMode = NULL;
PRINTER_DEFAULTS pd;
BOOL bFlag;
LONG lFlag;

// Open printer handle (on Windows NT, you need full-access because you
// will eventually use SetPrinter)...
ZeroMemory(&pd, sizeof(pd));
pd.DesiredAccess = PRINTER_ALL_ACCESS;
bFlag = OpenPrinter(pPrinterName, &hPrinter, &pd);
if (!bFlag || (hPrinter == NULL))
{
DWORD dwCode = GetLastError();
AfxMessageBox ("OpenPrinter failed.");
return FALSE;
}
有人知道如何获取SetPrinter的权限吗? 小生谢了`(不好意思 我没积分可以发的。。)
...全文
512 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
ForestDB 2010-06-14
  • 打赏
  • 举报
回复
帮顶。

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧