Home › Forums › TWAIN Classic › Windows Server 2003 Terminal Services
- This topic has 3 replies, 3 voices, and was last updated 16 years, 4 months ago by gabe.
- AuthorPosts
We have installed a Xerox WorkCentre 7132 network printer/scanner in a Windows Server 2003 Terminal Services environment. It was installed correctly using the Add/Remove programs in Control Panel. Have also checked that the WIA service is running.
When using Twack_32 application -> File -> Select Source, it does appear in the list. In fact no Twain scanner drivers that are installed appear in the list.
If we install on a regular workstation it appears in the Select Source list and works fine.
Is there a problem with Twain running in a Windows Server 2003 Terminal Services environment?
Thanks.
Thomplugging the twain device into the ts… I would suggest against it there are usually better solutions. I know this doesn’t answer your question, and I’m not sure why you sources don’t show up in twackers – I would check that the .ds files exist in the %windir%twain_32 dir on the ts and that the users have access to the directory. From there I would probably either step thru the twacker code or even better run filemon to see what files are getting accessed on the ts.
On the side, ts is odd enough on its own andfor that matter twain isn’t really something I would can clean but mixing in WIA which tends to muck with twain and twain solutions is my my experience just asking for trouble.
For our ts users we have all the twain stuff on the workstations where the users will be working and then an app on the ts that talks to each of the workstations to acquire stuff – it works pretty well.
On a terminal server the GetWindowsDirectory/GetWinDir doesn’t return C:WINNT but instead a windows directory under the users account.
To get around this problem you can either copy the TWAIN files (twain.dll, twain_32.dll, twunk_16.exe and twunk_32.exe) to the above mentioned user “windows” directory and create a TWAIN_32 folder in the same for the data sources, or you can set a registry compatibility flag for you application to get GetWindowsDirectory to return the true Windows directory.
Refer to http://support.microsoft.com/default.aspx?scid=kb%3Ben-us%3B186499In the registry folder:
HKEY_LOCAL_MACHINESoftwareMicrosoftWindows NTCurrentVersionTerminal ServerCompatibilityApplicationsAppname
set Flags (a reg_dword) to 408h if you application is 32 bit. The value 40Ch may be more appropriate, as this seems to be quite common for all the pre-existing keys. This last flag mean Win-32, Win-16 and return literal windows dir.
“Appname” above is your applications file name minus the “.exe” part.A last note – this will most likely only work if the scanner is physically attached to the Terminal server’s (COM, LPT, SCSI or USB) port.
@mcm wrote:
On a terminal server the GetWindowsDirectory/GetWinDir doesn’t return C:WINNT but instead a windows directory under the users account.
To get around this problem you can either copy the TWAIN files…or if you can get the developers to use GetSystemWindowsDirectory instead of GetWindowsDirectory|GetWinDir.
but good call on the wrong function being used to feed the load library call, that didn’t occur to me even though I’ve had that problem..
.
- AuthorPosts