I have made an executable using the ADK. I have sent the executable to
someone running W95 (original W95, I think) and the executable won't run, complaining about needing to register the VM. I had him try to register the CR and VM dlls with the following Start | Run regsvr32 c:\cm\client\bin\DolphinCR993.dll regsvr32 c:\cm\client\bin\DolphinVM993.dll I understand the first (for DolphinCR993.dll) succeeded, but the second failed with an error like LoadLibrary("DolphinVM993.dll") failed. GetLastError returns 0x00000485 We have tried several variants, such as running regsvr32 directly from an MS-DOS command line, etc., such as c: cd \cm\client\bin dir (to verify the dlls are present and how their names are spelled) c:\windows\system\regsvr32 DolphinVM993.dll all with the same LoadLibrary error mentioned above. Any suggestions for getting the executable to run on a W95 machine? We have already installed Internet Explorer (version 5) and also msvcrt prior to running regsvr32. As far as I can tell, registering the dlls is not necessary on W98 or W2K. Is that your understanding also? -- Frank [hidden email] |
How about an option when building an executable to link/combine these
two dlls into the .exe so that there is only one (large) file to distribute? I don't know that this is technically possible, but it might eliminate this kind of problem where the VM will be used with only 1 exe file. Just my tupence tonight. Donald "Frank Sergeant" <[hidden email]> wrote in message news:8uscm3$10c$[hidden email]... > I have made an executable using the ADK. I have sent the executable to > someone running W95 (original W95, I think) and the executable won't run, > complaining about needing to register the VM. I had him try to register the > CR and VM dlls with the following > > Start | Run > regsvr32 c:\cm\client\bin\DolphinCR993.dll > regsvr32 c:\cm\client\bin\DolphinVM993.dll > > I understand the first (for DolphinCR993.dll) succeeded, but the second > failed with an error like > > LoadLibrary("DolphinVM993.dll") failed. > GetLastError returns 0x00000485 > > We have tried several variants, such as running regsvr32 directly from an > MS-DOS command line, etc., such as > > c: > cd \cm\client\bin > dir (to verify the dlls are present and how their names are spelled) > c:\windows\system\regsvr32 DolphinVM993.dll > > all with the same LoadLibrary error mentioned above. > > Any suggestions for getting the executable to run on a W95 machine? We > already installed Internet Explorer (version 5) and also msvcrt prior to > running regsvr32. > > As far as I can tell, registering the dlls is not necessary on W98 or W2K. > Is that your understanding also? > > > -- Frank > [hidden email] > > > > > |
In reply to this post by Frank Sergeant
"Frank Sergeant" <[hidden email]> wrote in message
news:8uscm3$10c$[hidden email]... > I have made an executable using the ADK. I have sent the executable to > someone running W95 (original W95, I think) and the executable won't run, > complaining about needing to register the VM. I had him try to register the > CR and VM dlls with the following Run-time installation is my only serious complaint towards Dolphin, I find it to be an major pain. Recently I had to install dollphin app to 50-something remote machines, and I had misserable 60% success rate on the first try. All other machines needed some hand tweaking and poking around the windows to get the VM registered. I think it is not all Dolphins blame, our setup could have been done better, but even if we followed each bit of information about installation we could find, I think we would have at least 10-15% failures. The procedure wich I found workable on the most stubborn machines is as follows: o Install 50comupd (it reboots the machine) o Install mfc42.exe (sometimes reboots the machine) o unzip to the programs directory c-runtime dll's found on the Dolphin wiki (DolphinMSVCRTlibs.zip) o hand register the vm Anyway, puting all this to the single setup is not easy, and forcing an client through all this is unacceptable. I have went through by instaling RemoteAdmin to their machines and doing the dirty work by myself during the nights, which is a strategy that can work if you know clients and you have not too many of them. As a part of the setup we also throw in dcom update file (but we do not run it), and regsvr32 just in case. Davorin Rusevljan |
"Davorin Rusevljan" <[hidden email]> wrote in message
news:8utm5d$8fou$[hidden email]... > > The procedure wich I found workable on the most stubborn machines is as > follows: Thank you very much for listing your procedure. At least I have something to try. > o Install 50comupd (it reboots the machine) > o Install mfc42.exe (sometimes reboots the machine) > o unzip to the programs directory c-runtime dll's found on the Dolphin wiki > (DolphinMSVCRTlibs.zip) > o hand register the vm By 'hand register', do you mean to run regsvr32 as in regsvr32 DolphinVM993.dll or do you mean something else, such as editing the registry directly? (If so, please tell me how you do it.) > Anyway, puting all this to the single setup is not easy, and forcing an > client through all this is unacceptable. Yes, that is a problem for me. I can't expect the client to do it (especially when even I cannot do it!). Of course, it would simplify my life if I could require my clients to run W98 or newer, but I feel I simply cannot do that. In my earlier post, I forgot to mention I'm running version 3.06 pl5. Andy, Blair, Is there any sort of command line parameter that I could supply to the executable to tell it where to find the VM, in order to get around this problem? Anything I could do to 'patch' the executable with a binary editor to indicate where to look for the VM? Might you be able to alter the stub program (or whatever) so that it first checks the directory the image is in and if the VM is present there, to just use it, thereby avoiding the need to register the VM? Any other thoughts or suggestions about how to register the VM? -- Frank [hidden email] |
In reply to this post by Davorin Rusevljan-2
Davorin,
> Run-time installation is my only serious complaint towards Dolphin, I find > it to be an major pain. Recently I had to install dollphin app to > 50-something remote machines, and I had misserable 60% success rate on the > first try. All other machines needed some hand tweaking and poking around > the windows to get the VM registered. I think it is not all Dolphins blame, > our setup could have been done better, but even if we followed each bit of > information about installation we could find, I think we would have at least > 10-15% failures. One of the problems we found with the installation of the Dolphin runtime system (which, of course, the Setup program for the development system has to install itself) was that if the MSVCRT library was too old then the VM would refuse to register during the setup. Of course the setup installs the correct MSVCRT but this doesn't get copied over until a reboot, which is too late because the setup has already tried to register the VM and failed. In these cases it is necessary to use REGSVR32 to manually register the VM or (perhaps preferably) to run the setup a second time. Another problem we've seen was caused by an earlier distribution of the Java VM being supplied with a copy of MSVCRT with the wrong (later) date. This caused our installation to think that current version on the system was adequate (when it wasn't) and to not install the correct version. Truly "DLL Hell". Hopefully, all this will get significantly better with Dolphin 4.0 for developers who choose to make use of the Windows Installer (MSI). This allows us to supply you (the developers) with a "merge module" containing all the stuff to correctly set up and register the Dolphin runtime files on a target achine. All you need to do is to link this (and the merge modules for MSVCRT and MSVCIRT) with your setup and "hey presto" all should be well. Unfortunately, this all comes at a price (literally). Although the Windows Installer system is, itself free, it appears that most setup programs that make use of it are not. If you have MS Visual Studio then the Visual Studio Installer is free and will probably be adequate for most purposes. Alternatively, you can buy the offerings from Wise or InstallShield that are compatible with the Windows Installer. These seem to be priced around $800-1000 (which is pretty galling when one considers the cost of the Dolphin development system). Of course the API for the underlying Windows Installer will be fully accessible by Dolphin. All it needs is someone out there to create a Dolphin Setup Builder and we're away. Any takers? Best regards, Andy Bower Dolphin Support http://www.object-arts.com --- Visit the Dolphin Smalltalk Wiki Web http://www.object-arts.com/wiki/html/Dolphin/FrontPage.htm --- |
In reply to this post by Frank Sergeant
"Frank Sergeant" <[hidden email]> wrote in message
news:8uujdu$ku1$[hidden email]... > By 'hand register', do you mean to run regsvr32 as in > > regsvr32 DolphinVM993.dll this is what I ment. Davorin Rusevljan |
In reply to this post by Andy Bower
"Andy Bower" <[hidden email]> wrote in message
news:8uvak9$2ugph$[hidden email]... > Davorin, > > One of the problems we found with the installation of the Dolphin runtime > system (which, of course, the Setup program for the development system has > to install itself) was that if the MSVCRT library was too old then the VM > would refuse to register during the setup. Of course the setup installs the > correct MSVCRT but this doesn't get copied over until a reboot, which is too > late because the setup has already tried to register the VM and failed. In > these cases it is necessary to use REGSVR32 to manually register the VM or > (perhaps preferably) to run the setup a second time. Rebooting and registering afterwards helps sometimes, but not allways. There are some machines which will register only if I do the rain-dance described - install the new C runtime in windows system (by means of mfc42.exe), _and_ put the msvcrt files into the directory where dolphin app runs. > Hopefully, all this will get significantly better with Dolphin 4.0 for > developers who choose to make use of the Windows Installer (MSI). This > allows us to supply you (the developers) with a "merge module" containing > all the stuff to correctly set up and register the Dolphin runtime files on > a target achine. All you need to do is to link this (and the merge modules > for MSVCRT and MSVCIRT) with your setup and "hey presto" all should be well. I am looking forward to it :) > Of course the API for the underlying Windows Installer will be fully > accessible by Dolphin. All it needs is someone out there to create a Dolphin > Setup Builder and we're away. Any takers? I have developed a slight fobia towards installations, so I will have to politely decline :) Davorin Rusevljan |
In reply to this post by Frank Sergeant
Frank
> Is there any sort of command line parameter that I could supply to the > executable to tell it where to find the VM, in order to get around this > problem? ... Actually the executable will find the VM if it is in the same directory as the executable (or any other directory on the path search by load library), and register the VM itself if it finds it is not registered. However, this will not help you. The problem is that some pre-requisite library of the VM is not available, or is not available in the correct version, and so it fails to register. When the .EXE tries to register the VM itself (if it finds it) it will have the same problem. This is usually (on Win95) down to an absent, or incorrect, version of one of the C runtime libraries. There is some information on the Wiki about it, and also in Ian's newsgroup archive. Regards Blair |
In reply to this post by Andy Bower
"Andy Bower" <[hidden email]> wrote in message
news:8uvak9$2ugph$[hidden email]... [snip] > > Of course the API for the underlying Windows Installer will be fully > accessible by Dolphin. All it needs is someone out there to create a Dolphin > Setup Builder and we're away. Any takers? I am probably missing something here because I don't know jack about installers, but... What does this Dolphin Setup Builder produce? An install program? Got any documentation on this that the uninitiated could read? > > Best regards, > > Andy Bower > Dolphin Support > http://www.object-arts.com > > --- > Visit the Dolphin Smalltalk Wiki Web > http://www.object-arts.com/wiki/html/Dolphin/FrontPage.htm > --- > > |
Donald,
> > Of course the API for the underlying Windows Installer will be fully > > accessible by Dolphin. All it needs is someone out there to create a > Dolphin > > Setup Builder and we're away. Any takers? > > I am probably missing something here because I don't know jack about > installers, but... What does this Dolphin Setup Builder produce? An install > program? Got any documentation on this that the uninitiated could read? Not really "documentation", but, have a look at http://www.object-arts.com/wiki/html/Dolphin/ItWouldBeCoolIfWeHad.htm which contains a small entry on the idea. The end result could take a variety of forms, but, one thing is clear: if it's a Dolphin app, it needs the runtimes to get going. If you have any thoughts on how to make it work, please add them to the Wiki page. Have a good one, Bill -- Wilhelm K. Schwab, Ph.D. [hidden email] |
"Bill Schwab" <[hidden email]> wrote in message
news:8v1arm$35iso$[hidden email]... > Donald, > > > > Of course the API for the underlying Windows Installer will be fully > > > accessible by Dolphin. All it needs is someone out there to create a > > Dolphin > > > Setup Builder and we're away. Any takers? > > > > I am probably missing something here because I don't know jack about > > installers, but... What does this Dolphin Setup Builder produce? An > install > > program? Got any documentation on this that the uninitiated could read? > > Not really "documentation", but, have a look at > > http://www.object-arts.com/wiki/html/Dolphin/ItWouldBeCoolIfWeHad.htm > > which contains a small entry on the idea. The end result could take a > variety of forms, but, one thing is clear: if it's a Dolphin app, it needs > the runtimes to get going. If you have any thoughts on how to make it > please add them to the Wiki page. That was my confusion. How does an Dolphin installer install the runtime dlls on which it depends? |
"Donald MacQueen" <[hidden email]> wrote in message
news:8v2511$eg7$[hidden email]... > That was my confusion. How does an Dolphin installer install the runtime > dlls > on which it depends? My gut feeling is that MS installer (which is free or something like that) can run some form of installation scripts, or install a program from some sort of configuration data. Now what is not free, and what wise and likes are selling is an program which creates this script/configuration data. Since this program which creates the script is running on development machine there are no reasons why it could not be written in Dolphin. Davorin Rusevljan |
In reply to this post by jWarrior
Donald,
> That was my confusion. How does an Dolphin installer install the runtime > dlls on which it depends? The Microsoft Windows Installer (MSI) is a package that you install on you client computers. Win2000/ME come with it pre-installed and there ae updates for Win95/98. Once enables the MSI handles all the intricacies of installing applications that make use of it. Obviously, one needs to tell it what to install. This is done by creating a database file (with .MSI extension) that contains all of the information (and the DLLs etc) required by the installer to set up your app on the target computer. The database includes registry settings and other stuff too. So with MSI it is no longer necessary to create a setup program per se (e.g. SETUP.EXE). Instead, the process is data driven and what you, as software developer provide, is the database file (SETUP.MSI). So, the question then is, "How do I create this MSI database thingy?". Well, there are a number of proprietary solutions by the big setup program sellers, InstallShield and Wise. However, they tend to be very expensive (personally, I baulk at paying $999 for my install builder when my development tool costs arounf a quarter of that). Another is available as part of Visual Studio (Visual Studio Installer). But of course you have to be a paid up Visual Studio user to make use of it. The latter is the route we've taken for the Dolphoin 4.0 installs, BTW. An alternative would be to use the Microsoft supplied API to build te MSI database. This is quite a complex beasty (all install stuff seems to need myriads of options) but using Dolphin to to call this API would mean that you could write an Install *Builder* for Dolphin (or any other Dolphin based app) in Dolphin. If you're interested, see the "Reference" section on the following page: http://msdn.microsoft.com/library/psdk/msi/wiport_6gf9.htm Best regards, Andy Bower Dolphin Support http://www.object-arts.com --- Visit the Dolphin Smalltalk Wiki Web http://www.object-arts.com/wiki/html/Dolphin/FrontPage.htm --- |
"Andy Bower" <[hidden email]> wrote in message
news:8v311l$3d42o$[hidden email]... [snip] > > If you're interested, see the "Reference" section on the following page: > > http://msdn.microsoft.com/library/psdk/msi/wiport_6gf9.htm Gee, do you think they could have made it any more complicated? I will pass on this. I use Smalltalk precisely because I'd rather spend my time solving my customer's problem than fooling with hWnd, szFilename, etc. Donald |
In reply to this post by Andy Bower
Hi Andy,
> An alternative would be to use the Microsoft supplied API to build te MSI > database. This is quite a complex beasty (all install stuff seems to need > myriads of options) but using Dolphin to to call this API would mean that > you could write an Install *Builder* for Dolphin (or any other Dolphin based > app) in Dolphin. Please consider shipping a setup.exe or a .MSI for the Dolphin runtime support. If I understand correctly, that would take the sting out of installing the Dolphin runtime support, after which my existing copy of Wise should do very well at copying files and making shortcuts, registry changes, etc. I recently modified my DLLs and ActiveX controls to have minimal dependencies, which greatly simplified my self-induced runtime requirements. Other users might want to use the same approach. Have a good one, Bill -- Wilhelm K. Schwab, Ph.D. [hidden email] |
Free forum by Nabble | Edit this page |