But Chris, what are you trying to achieve? Please, read my previous posts:
you are NOT supposed to call RegSvr32 anymore. I'm not sure why you're
insisting on doing that, because InnoSetup will handle all those registration
issues for you -- that's why you use a proper installer, such as InnoSetup or
Wise, in the first place.
Just tell InnoSetup which files to install, and where they should be
installed. And if these files happen to be DLL:s then you should also ask
InnoSetup to register them for you by specifying the "regserver" flag. Why
not search the help files for the keyword [Files] (and the [Setup] section is
also very important to you, so read a bit about that one too).
Please, have a look at the InnoSetup help files, and read through the FAQ.
It should give you more information on how to use InnoSetup than you ever
wanted to know about... :o)
Cheers,
/MP
(By the way, the "LoadLibrary("C:\Documents") failed" message seems to be
triggered by an incorrect truncation of the file path -- "Documents and
Settings" has been truncated to "Documents" only. Without doing some basic
testing myself, I can't provide you with an answer on how to solve this --
but luckliy I don't need to, because you're not supposed to call RegSvr32
anyways :o)
"Chris Leroquais" wrote:
Mat and all,
I have inserted the following section in Inno setup:
[Run]
Filename: "{sys}\regsvr32.exe"; Parameters:"{app}\msadomd.dll"
but i get an error:
LoadLibrary("C:\Documents") failed - the specified modifiable has not been
found
P.S: my app is "C:\Documents and Settings\..etc..."
C
"Chris Leroquais" wrote in message
...
Mat,
you have completely answered my question. Thank you very much.
I've used InnoSetup.
According to your message, I need to launch the 'regsvr32 mydll' command
within the InnoSetup project.
Cheers,
Chris
"Mat P:son" wrote in message
...
Hi there Christophe, here are some bullets that I hope might clarify
things:
1) DLL:s that you've put together must be made available on machines
which
are supposed to run your macro
2) The DLL:s must also be properly registered (using regsvr32 is one way,
but not a very amusing one)
3) All DLL:s used by your DLL:s must also be deployed, provided that you
are
not 110% sure the DLL:s will always be present on the target machines
(for
example, if your DLL:s are developed in VB you have to make sure the VB
run-time is present)
4) The XLA file you've put together (it is an XLA, right?) will find your
DLL:s as long as (1) and (2) are adhered to. However, (3) is required to
make
the add-in *run*
Ideally, the registration process should be done by a proper installer.
There are quite a few commercial ones out there, and a bunch of free
ones --
Wise and InstallShield belong to the former category, and InnoSetup and
NSIS
belong to the latter (really user-friendly MSI-compliant freeware
installers
are harder to find though).
Since it seems you're developing a relatively small-scale app, I would
recommend e.g. InnoSetup, which is very fast to work with, and powerful
as
well (and it doesn't cost USD 5,000 thank you very much :o) The drawback
is
that it does not support MSI (and allegedly never will).
Cheers,
/MP
" wrote:
Hi,
I have created a macro in Excel. It uses 2 dll that are not built-in in
the Excel and windows system.
To use these dll, I must in the VBA Editor to Add References and
selects the dll files.
Now I have a concern for deploying the macro to other computers.
I'd like to know if for deployment I can make transparent the fact to
Reference the dll?
Can I create a script that use the 'regsvr32 mydll' command and this
would have the same effect as manually Reference the macro in the VBA
Editor?
Thx,
Christophe