Problem :
Opening a window with the new RTE control is very slow when the application is run on a terminal server with printer redirection enabled, and the "default" printer is set to use the "Remote Desktop Easy print" printer driver. This happens when the client printer driver is not installed on the terminal server. If default printer is changed to a printer which is installed on the terminal server the window opens instantly.
Workaround :
It is possible to get around this problem, but it requires some work to be done and the use of windows api functions. We have used OpenPrinter, GetPrinter and SetDefaultPrinter.
First you will have to delete the RTE control on the window/tab-page. Make a note off its location ( X and Y ) and size ( width and height ).
In the preopen or open event of the window you will have to check if the default printer driver is windows "REMOTE DESKTOP EASY PRINT". If it is, take a note of the name of the printer, and then you will have to change it to a printer which is not using this driver ( i.e. the “Microsoft XPS Document Writer” ).
Now you create the RTE control, set its properties and open/create it using OpenUserObjectWithParm.
RichTextEdit rte_control
rte_control = Create RichTextEdit
rte_control.x = 14
rte_control.y = 680
rte_control.width = 3771
rte_control.height = 980
OpenUserObjectWithParm (rte_control, "", 14, 680 )
rte_control.BringToTop = True
Now you change the default printer back to what it was originally.
It is not an ideal solution to the problem but it does make the window open much faster.
TEN