在NT服务程序中改变Printer的PrinterIndex时有问题,能否在NT服务程序中实现打印? ( 积分: 100 )

  • 主题发起人 主题发起人 beata520
  • 开始时间 开始时间
B

beata520

Unregistered / Unconfirmed
GUEST, unregistred user!
在NT服务程序中改变Printer的PrinterIndex时有问题,经过发现,原来是下面的GetProfileString读不出DefaultPrinter的原因,为什么在NT服务程序读不出来?
var
DefaultPrinter: array[0..1023] of Char;
GetProfileString('windows', 'device', '',DefaultPrinter,SizeOf(DefaultPrinter) - 1);
ShowMessage(string(DefaultPrinter));
这两行放到程序中,以普通方式运行,可以读出DefaultPrinter的值
而程序以服务的形式运行,则读出DefaultPrinter为空;
不知是什么原因,各位遇见过这个问题没有?
 
在NT服务程序中改变Printer的PrinterIndex时有问题,经过发现,原来是下面的GetProfileString读不出DefaultPrinter的原因,为什么在NT服务程序读不出来?
var
DefaultPrinter: array[0..1023] of Char;
GetProfileString('windows', 'device', '',DefaultPrinter,SizeOf(DefaultPrinter) - 1);
ShowMessage(string(DefaultPrinter));
这两行放到程序中,以普通方式运行,可以读出DefaultPrinter的值
而程序以服务的形式运行,则读出DefaultPrinter为空;
不知是什么原因,各位遇见过这个问题没有?
 
为什么没有人回答,难道大家没有遇见过这个问题
 
八成是权限问题,把服务的启动账号换成administrator看看
 
我测试了不是权限问题
 
后退
顶部