为什么我不能打印呢?(0分)

  • 主题发起人 主题发起人 goodman123
  • 开始时间 开始时间
G

goodman123

Unregistered / Unconfirmed
GUEST, unregistred user!
我编了一个系统服务程序,没有界面,是后台实时运行的,在里面我要实现打印功能。
我用的是shellexecute函数,主要代码如下:
filename前面已经有了赋值了
filename := 'c:/temp.txt';
ShellExecute(0,'print',Pchar(filename),'','',0);
我单独测试这句代码是没有问题的,但是加到我的程序里面就不行了,我的程序照样运行,功能也不影响,可是就是不能打印,为什么呢?是不是要重开一个线程呢?
请求各位大侠帮忙!
另外,我想在打印时不出现选择打印机的窗口,就好像是让他在后台运行打印一样。我的机器里装了3个打印机。这个功能怎样才能实现呢?
 
可以看看ShellExecute的返回值,小于32表示错误
可以改变一下参数如
ShellExecute(Handle, 'print', PChar('c:/test/test.doc'), nil, nil, SW_SHOW);.
 
可能是你的服务需要一个Windows帐号登录才能执行这个命令。
 
后退
顶部