I written a post about upgrade CR (Crystal Report) from Oracle 9i to Oracle 11gR2 one month ago, at that post, I talked about how different version of Oracle Database make Crystal Report migrate tough/broken and how I have solving those problem. After the Crystal Report Travel Card (T-Card) online this month, I also meet some problem relative with the Windows Server, which I think also very interesting and hoping you will enjoy the story.
After make sure all the T-Card printed properly in the test environment, I start install the whole MES Travel Card printing system on the production which will be used on 1/2/2012 to our production environment. There is hundreds of printer; user can use any of the printers which are near him to output the paper Travel Card in the MES system. During the UAT, user tested some T-Card to output to their printer and suddenly I found that production environment T-Card printing system can only output the T-Card in test printer.
Certainly I enable the printing system logs to trace the problem immediately and found… there is nothing wrong in the log. The printing system just block at setting printer in the log:
There is nothing reported after that and the program just dead like a dummy, feeling very frustrated I start to write a command line based test program – PrintingSystemTestApp.exe and hoping can found something, now I’m lucky and I got it:
So that’s the point: The printer in Windows 2008 need manually install its printer driver once before it can working properly in windows service program. A secured windows server will make printing function not work at all in production!
So I just write to the our company’s windows team to see if those manually confirm dialog can be by passed similar to UAC control (Computer Configuration -> Windows Setting -> Security Settings -> Local Policies -> Security Options -> Elevate without prompting) at Group Policy.
The answer is yes! Based on the http://technet.microsoft.com/en-us/library/cc753269.aspx TechNet document, here is the Group Policy access path: Local Computer Policy -> User Configuration -> Administrative Templates -> Control Panel -> Printers -> Point and Print Restriction:
After disable this feature, the production T-Card printed properly now and all user are now happy!