I have written a simple PlugIn to liase with out Document MAnagement software, all the system does is essentially log the current open file and pass that to an external DLL call for the document manager). This worked find but as of a month ago when trying to initialize the External DLL is claims Class Not Registered (from the compiled Add-In, that was working the previous day.).
I have now taken all the external dependancies out of this DLL so all it does is display a message box, same thing. I have compiled both the plugin and external DLL in 64 bit and 32 bit and still the same (using the appropriate regasm tool to register it). This isn't just on a local machine though,,, it occurs on all I tested on,
Have come to a bit of an impasse and need help or guidance.
Thanks in advance
PS It is a Reader App (and has is always signed as such after a compile)
PS I have also posted this in the wrong forum elsewhere but not sure where it was (I went to a developer forum straight from Google).
Does this happen in Acrobat (not Reader)?
Does it happen if you turn off protected mode?
I didn't even think of protected mode, needless to say it works. How what does this mean if I want to distribute my plugin (I can imagine clients balking at turning protected mode off). I thought the signing would take care of that (apologise if I am being a but innocent \ ignorant of this).
It didn't happen in Acrobat, alas my trial has expired now.
You cannot expect to develop without owning Acrobat.
To be honest, this project is a proof of concept (and one that will fail if I can't work out how to get it to work in non-protected mode). Hence whilst we only had Acrobat on trial, if I can prove this is worthwhile then we will be, of course, be purchasing Acrobat.
So again, excuse my ignorance on the subject, why would something work in protected mode and not in unprotected? and how can I fix it?
The key thing about protected mode is that it runs in a "sandbox". The sandbox principle is to protect against exploitation of bugs. Imagine: someone manages to use a vulnerability to make Reader execute code. The sandbox mimimizes damages. The most obvious thing is that most files in the system are blocked as if they didn't exist. this certainly includes blocking access to APIs and DLLs. You need a deep understanding of this to write Reader plugins. You may need to install an interface module in one of the accessible locations.
Okay I guess I need to read up it all seems possible at the very least. Any good starting places you can recommend?