Date: prev next · Thread: first prev next last
2011 Archives by date, by thread · List index


Hi
On 26/04/11 20:46, pjpuchyr wrote:
Running calc, I need to load a dll which is not in the search path, and my
problem is
that the Basic ChDir statement does nothing on Windows 7, so the dll can
never be found.
Is there a solution to this problem?
afaik ChDir doesn't work on *any* platform from LibreOffice/Openoffice.org Basic
To elaborate,  I've written an app which runs as a dll loaded by a
spreadsheet.   My clients
are engineers who do not have administrator privileges on their machines, so
the dll is
typically not put in the standard search path for dlls.   One of the
spreadsheet inputs is the
path to the dll, which is picked up by the Basic code.   On systems where
ChDir works,
This is what's confusing me, I presume you Microsoft Office ( Excel ) when you say "On systems where ChDir works" right?
I simply ChDir to the specified directory and the dll loads.
how do you intend to load/access the dll in libreoffice, via Declare syntax ?
In OpenOffice/LibreOffice, ChDir does nothing (doesn't work and doesn't
issue an error),
which is strange :-/ but looks to have been done purposely :-/
so my alternatives are
1) hard code the full path into the Basic Declare statement, which is
unacceptable because
    I have no control over where the dll is put
ah, ok you are using 'Declare' Hmm assuming that 'ChDir' is a non runner then there are a couple of possibilities a) you could expose your functionality via a dreaded extension ( and provide a thin uno interface wrapper for your dll ) - your users would have an extra step of having to install the extension b) you could convert your dll to be a binary, you could launch the binary via the 'Shell' command. Getting information back from your application might be more difficult you probably would need to do some custom handshaking... yeuch forget it, actually your best bet is an extension c) if your functionality is somewhat generic and useful you could consider adding it to the calc core and have it generally available to everyone

Noel

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.