Solved

ReportToPDF & Terminal Server

Posted on 2007-12-03
13
366 Views
Last Modified: 2013-11-21
This took me just short of forever to figure out what my real problem actually is.  I have a microsoft access database using the ReportToPDF function found at http://www.lebans.com/reporttopdf.htm.  It turns access snapshot reports into PDFs using two DLL's placed in the databse folder or system32 folder.  An amazing little program.  On my development machine, a 2003 server (without Terminal Services installed) that I use RDP to access, it works great.  Once I installed the database on my production Terminal Server, it lost the ability to embed fonts into the PDF.  To recap my hardware & software scenario,

2003 Development Server - Access 2003 Installed - Remote Access vis RDP - Works great

2003 Production Terminal Server (Terminal Services & Access Runtime Installed) - Works but with Limited Functionality/Won't Embed Fonts

Thinking it had to be some minor difference between the two machines, I checked available fonts, user permissions, compared installed programs, duplicated available printers, uninstalled programs, etc.  Nothing worked.  I finally realized it was only working on servers without Terminal Services installed.  So, something must be happening when access runtime is installed as a terminal services app because that's when I lose the ability to do it, even if I give the test account domain admin privaleges.  When runtime is installed normally, it works fine.  I even installed a full version of access 2003 as an available terminal server application and that didn't work either, so it's not just runtime, it's effecting access period.

At this point, I'm completely stumped.  I'm just looking for some suggestions or ideas on what you'd try because I don't know what to do next.  This program works so slick that I want to be able to use it, but I guess I'm open to alternative suggestions that can be coded and work without user intervention.

Thanks!

P.S. I have another question open touching on this that I asked before truly figuring out what my problem was.  If someone can provide an answer to this one, I'll give you those 500 points as well.
0
Comment
Question by:tommyboy115
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 6
  • 4
  • 2
  • +1
13 Comments
 
LVL 18

Expert Comment

by:Andrew Davis
ID: 20401343
does the app work on the console. was it installed in program install mode? see http://www.sessioncomputing.com/applications.htm
0
 

Author Comment

by:tommyboy115
ID: 20401376
I've installed it both ways on two different computers.  When it's installed on the server running Terminal Services, it's installed in the terminal service's installation mode.  With 2003 runtime, the transform is built in and pretty much runs itself.  In this scenario, ReportToPDF doesn't work, or speicifically I should say embedding the fonts into the PDF doesn't work in a standard session or on the console.

When installed normally on another server, it works fine even over a RDP session, console or regular.  Access runtime being installed as a terminal services app does something to screw this up.
0
 

Author Comment

by:tommyboy115
ID: 20401384
I should add that the last comment holds true for Access 2003 runtime and a full installation.  When run, the function creates a access snapshot report, converts it to a PDF, and saves it.  Everything works in that process except the PDF's aren't embedded.
0
Major Incident Management Communications

Major incidents and IT service outages cost companies millions. Often the solution to minimizing damage is automated communication. Find out more in our Major Incident Management Communications infographic.

 
LVL 57
ID: 20402155

  I'd say you need to e-mail Stephen.  Sounds like a bug and being wrapped up in .DLL's, there is no way your going to be able to figure out what it is.

JimD
0
 
LVL 31

Expert Comment

by:Cláudio Rodrigues
ID: 20402284
Does it work if you have admin rights?
Does it work if BEFORE you launch the application you open a command prompt on the TS and type CHANGE USER /INSTALL (press enter)?
To be honest the only PDF printer solution that I have seem to work perfectly on TS was DocuPrinter from http://www.neevia.com. They were also the first ones to have a 64-bit TS compatible solution.

Claudio Rodrigues
Microsoft MVP
Windows Server - Terminal Services
0
 

Author Comment

by:tommyboy115
ID: 20405639
tsmvp,

Yes, it does work if I switch to install mode.  That pretty much confirms my theory.  Does it provide any more clues as to what I'd need to do to make it work?

Thanks!
0
 
LVL 31

Expert Comment

by:Cláudio Rodrigues
ID: 20406484
For sure it does. You must set a flag in the registry for the application executable. All the flags are listed here:
http://technet2.microsoft.com/windowsserver/en/library/df78c476-00d5-41f0-a21d-e1e12e3d1f8b1033.mspx?mfr=true

These should be the relevant ones in your case:
0x00000080
Do not substitute user \Windows directory.

0x00000100
Disable registry mapping for program or registry key.

If you set these (or one of these) it should work.
Something like:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ Windows NT\CurrentVersion\Terminal Server\ Compatibility\Applications\myapp.exe (or just myapp if with .exe does not work),
Then set the default value (DWORD value) to be 0x00000080 or 0x00000100 or 0x00000180.

Claudio Rodrigues
Microsoft MVP
Windows Server - Terminal Services
0
 

Author Comment

by:tommyboy115
ID: 20406606
Technically, my app is an Access database, so I don't think that's what you intend for me to identify in the registry as not being compatible.  The specific problem is the dynapdf.dll my function is calling.  I can't regsvr32 the .dll, so I'm not sure if it's an actual dll or just an exe in disguise.  Would I handle this this scenario in the same fashion and list the .dll in the registry as you indicated?
0
 

Author Comment

by:tommyboy115
ID: 20407690
Any thoughts?
0
 

Author Comment

by:tommyboy115
ID: 20407894
tsmvp,

While you were definitely on the right track and identified the issue, the problem is solved.  I was able to download the most recent version of the dynapdf.dll and it must have been redesigned because it now works within a terminal server.  Thanks for all the help!  So, for anyone else out there with this problem, go to http://www.dynaforms.com/, then click download, and download the demo.  Grab dynapdf.dll from C:\DynaPDF 2.0\bin and replace your existing one on the terminal server.  No other action is required.  Thanks to Stephen Lebans for recommending this potential solution.

Thanks!

P.S. Add another comment pointing to this one as a solution and I'll give you the points.
0
 
LVL 31

Accepted Solution

by:
Cláudio Rodrigues earned 500 total points
ID: 20408550
Yes, that is usually the solution. Most developers do not have TS in mind and things like that happens. That is why such flags exist. So in case you are able to get a newer version of the DLL that works with TS, that is for sure the way to go. For vendors that do not have an updated file that works out-of-the-box on TS, the flags will definitely fix the problem.

Cheers!

Claudio Rodrigues
Microsoft MVP
Windows Server - Terminal Services
0
 
LVL 57
ID: 20410760

  and like I said, a bug in the .DLL.

JimD
0
 
LVL 31

Expert Comment

by:Cláudio Rodrigues
ID: 20411606
Well it may not be a bug per se. The fact some software does not work properly under TS does not represent a bug. It may simply be the way the developer designed it.

Claudio Rodrigues
Microsoft MVP
Windows Server - Terminal Services
0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Setup new Server 2012R2 DC 1 53
MS Office 2016 Home & Business, Access Runtime 2013, on Citrix? 6 61
Create a varying recordset 5 48
Access Query function 4 46
Phishing attempts can come in all forms, shapes and sizes. No matter how familiar you think you are with them, always remember to take extra precaution when opening an email with attachments or links.
Preparing an email is something we should all take special care with – especially when the email is for somebody you may not know very well. The pressures of everyday working life stacked with a hectic office environment can make this a real challen…
In Microsoft Access, learn how to use Dlookup and other domain aggregate functions and one method of specifying a string value within a string. Specify the first argument, which is the expression to be returned: Specify the second argument, which …
With Microsoft Access, learn how to specify relationships between tables and set various options on the relationship. Add the tables: Create the relationship: Decide if you’re going to set referential integrity: Decide if you want cascade upda…

738 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question