Standalone .exe not standing alone

General APL language issues

Standalone .exe not standing alone

Postby MBaas on Wed Dec 09, 2009 5:37 pm

Hmm, I guess Paul M. would love this - I haven't found the right category for this one, so I guess the general category will have to do ;)

So I tried to run a "standalone executable" on a PC which never saw Dyalog 12[.1] - and got a msg "The APL Runtime Engine (dyalog121rt_unicode.dll) could not be found.". According to the doc, it is also not needed! Copying that file to the app-dir fixed the problem and the program started running...
User avatar
MBaas
 
Posts: 156
Joined: Thu Oct 16, 2008 1:17 am
Location: Gründau / Germany

Re: Standalone .exe not standing alone

Postby Vince|Dyalog on Mon Dec 14, 2009 10:39 am

Hi Michael,

I've replied to your support email about standalone .exes and .Net, but I thought I'd post the answer here so that other users who see your question can see my answer.

In the 12.1 latest enhancements help file, it says that if your standalone .exe needs .net support, you will need to deploy dyalognet.dll and the appropriate bridge*.dll.

Unicode Edition 32-bit: bridge121_unicode.dll
Unicode Edition 64-bit: bridge121-64_unicode
Classic Edition 32-bit: bridge121.dll
Classic Edition 64-bit: bridge121-64.dll

You could choose one of the following methods of deployment:
    In XP, you could drag-drop them into the GAC (c:\windows\assembly) using My Computer.

    There is a utility called gacutil.exe. gacutil.exe is part of Visual Studio.

    The setup_dotnet_*.msi dyalog .Net interface install (part of the 12.1 .zip file) should also do the job.

    Create your own install program to install the files.
Regards,

Vince
Vince|Dyalog
 
Posts: 335
Joined: Wed Oct 01, 2008 9:39 am

Re: Standalone .exe not standing alone

Postby MBaas on Mon Dec 14, 2009 10:49 am

Thanks Vince, that has helped me move on. As a suggestion for improvements of the doco: I had initially just assumed, "deploying" these DLLs would mean "copy to program-directory", but (as you clarified) they need to be installed into the GAC. Trying to do so (using 3d party installer InnoSetup) presented the next hurdle, as it required a strong assembly name of these DLLs. I used Reflector to find that.
And the .exe then also needed dyalog121rt_unicode.dll (or dyalog121_unicode.dll) which was not mentioned in the doco (or perhaps that's an unintended feature?)...
User avatar
MBaas
 
Posts: 156
Joined: Thu Oct 16, 2008 1:17 am
Location: Gründau / Germany

Re: Standalone .exe not standing alone

Postby Vince|Dyalog on Mon Dec 14, 2009 11:22 am

MBaas wrote:"deploying" these DLLs would mean "copy to program-directory", but (as you clarified) they need to be installed into the GAC...
And the .exe then also needed dyalog121rt_unicode.dll (or dyalog121_unicode.dll) which was not mentioned in the doco (or perhaps that's an unintended feature?)...


Yes, installed into the GAC as well as being in the same directory as your program.

I have replied to your dyalog121rt_unicode.dll issue in the 2110 ibeam topic that you have made a link to above.
Vince|Dyalog
 
Posts: 335
Joined: Wed Oct 01, 2008 9:39 am


Return to Language

Who is online

Users browsing this forum: No registered users and 0 guests