Tools Host best practice
Tools Host best practice
Summary
Conversion may fail and content as Final Form stays empty after converting to final form.
Eventlog might show:
Error: COO.1.1.1.2662/COOSYSTEM@1.1:DLLERR_FAILURE Text: DLL: Error when calling "FSCCNV92.FSCCONVConvertExcel" (The system cannot find the path specified. (0x80070003/2147942403)) Object: COO.10.7665.3.2661 Action: FSCCONV@1.1001:ConvertExcel Library: FSCCNV92 Function: FSCCONVConvertExcel User: SUPPORT\conv_w2k8x64925folio Process: 3368 (0x00000D28) [W3WP] Thread: 2412 (0x0000096C) Version: 9.2.5.67 System: WinVista 6.00 Build 6002 Service Pack 2.00 Memory: 87836/2235556/4291302768
Information
The Fabasoft Folio conversion services using several third-party products to convert content objects from the source file format to the destination file format.
These conversion tools are invoked in the security context of the conversion user service account and configured as described in the installation guide to not show any user dialog that could interrupt the conversion process.
Nevertheless there might pop up dialogs in certain circumstances especially in Microsoft Office programs. So Fabasoft uses a mechanism that is called Tools Host to detect and close all known popup dialogs.
Figure 1 shows the Tools Host configuration object
The blocking windows are detected on their Windows Title, Window Class whereas #32770 stands for “Dialog”, Window Style and the Window Process.
Solution
Detect blocking dialogs on example of Microsoft Excel
Activate conversion logging FSCCONV@1.1001( Logging possibilities ) and open the input file manually as conversion service user.
If no dialog box shows up go to the print dialog and select a Fabasoft printer and press OK.
(This is what the conversion service actually does)
In this example the following message box appears.
Note: if you where asked for an “Output file name” everything is fine!
Start the Fabasoft Tracer and select Trace -> Windows
Look for class #32770 (Dialog)
01374: 2010-11-18 10:44:43: 0.006: --- level = 1 01375: 2010-11-18 10:44:43: 0.006: --- window = 0x0000000000040210 01376: 2010-11-18 10:44:43: 0.006: --- parent = 0x00000000000601B4 01377: 2010-11-18 10:44:43: 0.006: --- class = <#32770> 01378: 2010-11-18 10:44:43: 0.006: --- thread = 0x000006BC 01379: 2010-11-18 10:44:43: 0.006: --- process = 0x000013D0 01380: 2010-11-18 10:44:43: 0.006: --- instance = 0x000000005D160000 (invalid) 01381: 2010-11-18 10:44:43: 0.006: --- windowrect = (350/336)-(682/444) 01382: 2010-11-18 10:44:43: 0.006: --- clientrect = (0/0)-(326/83) 01383: 2010-11-18 10:44:43: 0.006: --- prop <#43286 > 0x0000000000000002 01384: 2010-11-18 10:44:43: 0.006: --- style = 0x94C801C5 01385: 2010-11-18 10:44:43: 0.006: --- WS_POPUP 01386: 2010-11-18 10:44:43: 0.006: --- WS_VISIBLE 01387: 2010-11-18 10:44:43: 0.006: --- WS_CLIPSIBLINGS 01388: 2010-11-18 10:44:43: 0.006: --- WS_CAPTION 01389: 2010-11-18 10:44:43: 0.006: --- WS_BORDER 01390: 2010-11-18 10:44:43: 0.006: --- WS_DLGFRAME 01391: 2010-11-18 10:44:43: 0.006: --- WS_SYSMENU 01392: 2010-11-18 10:44:43: 0.006: --- WS_TILED 01393: 2010-11-18 10:44:43: 0.006: --- WS_POPUPWINDOW 01394: 2010-11-18 10:44:43: 0.006: --- extended style = 0x00010101 01395: 2010-11-18 10:44:43: 0.006: --- WS_EX_DLGMODALFRAME 01396: 2010-11-18 10:44:43: 0.006: --- WS_EX_WINDOWEDGE 01397: 2010-11-18 10:44:43: 0.006: --- WS_EX_CONTROLPARENT
Create a new aggregate line in tools host configuration object and map the trace output to the Tools Host configuration
(in the inequality signs: < >)
Tool Host | trace output |
Windows Title | window value |
Window Class | class value |
Window Style | decimal value of the calculated style |
calculate style value: style = 0x94C801C5
Add 8 leading F to the hex value to achieve 64 bit: FFFFFFFF94C801C5
(also necessary for 32 Bit conversion services)
Convert value to decimal: -1798831675
Blocking window of Microsoft Word
When you open a damaged document in Microsoft Office Word, the Show Repairs dialog box appears. This can lead to unexpected situations during conversions. The dialog can be prevented as described in the Microsoft knowledge base articel
http://support.microsoft.com/kb/903740/en-us .
Applies to
- all current versions