I believe this is a window security issue since /regserver is going to create a key inside HKLM which only admin grade user is allowed to do. Furthermore windows consider running a program from a network drive is a security risk and will prompt to ask for permission, but your batch file does not contain codes to do this job, so that it was skipped.
I heard it would be possible to change some setting in local policy security option to allow running this sort of things, but was told steps are complicated and will be a big security issue. I suggest you could pre-install and pre-registry j executables into each user's local drive so that the batch file need not be run. Чтв, 17 Мар 2011, Raul Miller писал(а): > Using j602 (32 bit), I wrote a small c# program that references it. > > I deploy the app with a batch file that first runs "%~dp0j.exe" > /regserver and then runs my app. (j.exe and j.dll from j602 are in > that directory.) > > It runs fine for me. > > Except, it does not work for anyone else. > > Furthermore, it does not work for me when I try running it from a > network drive instead of my C:\ drive. > > In my program, when it fails, I am getting a > System.IO.FileNotFoundException with the message: > > Could not load file or assembly 'Interop.JDLLServerLib, > Version=3.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its > dependencies. ... > > I tried installing J602 on another machine and then running jreg.bat > there and running the executable from that C: drive, where I installed > J, and I get the same problem. > > When I look at j.dll using version 2.2 ove depends,exe from > http://www.dependencywalker.com/ I only see obscure missing files > nested deep down under ieframe.dll and previous experience leads me to > believe that that is a quirk of windows that has nothing to do with J. > > When I run fuslogvw.exe (from .net 2.0 sdk) it shows no fusion log errors. > > I am at a loss here -- what could be going wrong? What should I be > looking into? Why doesn't this just work? (Personally, trying to use > j.dll is the closest I ever come to using COM in software I write.) > > (If it matters, I am building on a 64 bit windows 7 machine with > visual studio 2010 and I am deploying on a 32 bit windows xp machine, > and I have several versions of J installed there, but I am explicitly > building only for the x86 target and my reference to j.dll is to the > j.dll that comes with 32 bit j602.) > > Does anyone have any ideas of what I should be looking at, to get this > working? > > Thanks, > > -- > Raul > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm -- regards, ==================================================== GPG key 1024D/4434BAB3 2008-08-24 gpg --keyserver subkeys.pgp.net --recv-keys 4434BAB3 ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
