View Full Version : registering dll's with WindowsServiceAction
ioubzi
07-29-2002, 12:19 PM
Hi all,
After having copying files of my software, i have to register dll on a win2k system. For the moment, i use an executeWizardAction wich launch a reg.bat file. This .bat file says "regsvr32.exe mydll.dll". I would like to know if i can do the same thing with a windowsServiceAction ...?
Thanks!
BillBr
07-29-2002, 12:40 PM
Greetings:
You can use the "Windows Service" product action to accomplish this. It is located in the "Product Tab" as an "Install Action".
Hope this helps
Bill Brown
InstallShield Technical Support.
digidigo
01-06-2003, 06:24 PM
This doesn't seem right to me. Doesn't the windowsServiceAction install a Windows Service while rgvsrv32 installs self registering dll's.
David
Jeff Dillon
01-06-2003, 08:29 PM
I believe what you are looking for is called the "Win32 Self-Registering Files" bean.
digidigo
01-07-2003, 11:13 AM
Are all dll's "self registering?" I get an error when trying to use regsvr32 about a missing symbol.
dig
RobertDickau
01-07-2003, 11:18 AM
No, only DLLs that export a function called DllRegisterServer are self-registering. You can determine a DLL's exports using dumpbin.exe (part of Visual C++) or Dependency Walker (http://www.dependencywalker.com)...
digidigo
01-09-2003, 10:10 AM
So what do you use to install non-self-registering dll's? Is there a good resource for this?
Dig
RobertDickau
01-09-2003, 10:13 AM
For non-self-registering DLLs (such as C-callable DLLs), you should be able just to copy them to the desired target directory.
digidigo
01-09-2003, 10:17 AM
Are there any "best practices" solutions that I should be aware of when attempting to update a .dll file in the windows system directory?
I am trying to make sure that the user has msvcrt.dll installed.
dig
RobertDickau
01-09-2003, 11:24 AM
The general principle is that you should never overwrite a newer version of a DLL with an older one; on Windows 2000 (and Windows XP, presumably) msvcrt.dll falls under System File Protection, so you shouldn't install it on those systems, but on earlier versions of Windows you should check the existing copy's version, and then install your copy if it's newer...
digidigo
02-06-2003, 06:49 PM
I am totally new to Windows shared libraries. What is "System File Protection"? And where might I find some comprehensive information on what I should or shouldn't be doing?
dig
r.elberger
02-07-2003, 12:18 PM
look at msdn.microsoft.com.
system file protection is (in my opinion) a half-hearted attempt to working around 'dll-hell'. Implemented in Win2k forward.
Best rule of thumb is never to update a windows-shipped dll; rather, require it for your installation. You can do this by getting the custom bean that checks the version number and making a wizard condition on it to continue (just like you would for service pack but that's thru registry). In any case, it is dangerous water for a company to update windows binaries, especially when the binaries are not marked as redistributable.
-- rich
Kusum Wadekar
03-03-2003, 10:19 AM
I am having trouble with the following script - I get an error when this script runs - The paths are all correct. The program regsvr32.exe runs outside installshield for the same dll. Why doesnt this - LaunchAppandWait run in DEv 7.x -
I am using a Std project converted from a running and released 5.x install project.
function OnMoved()
#define sSaveiDEProgram "Something";
STRING szProgram, szFileName, szPath, szParam;
begin
szProgram = WINSYSDIR^"regsvr32.exe /s";
LongPathToQuote( szProgram, TRUE);
szPath = sSaveiDEProgram;
szFileName = "csdirectory.dll";
szParam = szPath + "\\" + szFileName ;
if (LaunchAppAndWait(szProgram, szParam, NOWAIT) < 0) ihen
MessageBox (@ERROR_REG_UNSUCCESSFUL, SEVERE);
endif;
end;
-----------------
What do you mean by "executeWizardAction wich launch a reg.bat" - How do you do this ? I might have to take this approach alternatively--?
Thanks for any help
Kusum
r.elberger
03-03-2003, 10:22 AM
Hi there, this is the MultiPlatform group... you should post this in the Professional 5.x group...
-- rich
Powered by vBulletin® Version 4.2.0 Copyright © 2013 vBulletin Solutions, Inc. All rights reserved.