Problem with running setup in Windows Server 2003 | | Author | Message | Schell | Posted: Tue Feb 26 16:20:07 CST 2008 | Top | Visual Basic >> Problem with running setup in Windows Server 2003 Hello, There is an apparent problem when running setup.exe (created by vbasic Setup Wizard) in Server 2003. The error is: "Invalid command-line parameters. Unable to continue" I know from the experience that that error appears always when trying to run Setup1.exe alone, which is a part of whole installation package. However, the user do not have access to that Setup1.exe file because it is a compressed file, and the only executable file in installation package is Setup.exe. What user should do, so the setup package will run properly? The setup log looks like this: ==================== ACTION: TempFile: "C:\WINDOWS\setup1.exe" (File was not found or was an older version -- new file copied) ACTION: RegKey: "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion", "SharedDLLs" ACTION: SharedFile: "C:\WINDOWS\system32\VB5StKit.dll" (File currently on disk was already up to date) ACTION: SystemFile: "C:\WINDOWS\system32\MSVBVM50.dll" (File currently on disk was already up to date) ACTION: SystemFile: "C:\WINDOWS\system32\StdOle2.tlb" (File currently on disk was already up to date) ACTION: SystemFile: "C:\WINDOWS\system32\OleAut32.dll" (File currently on disk was already up to date) ACTION: SystemFile: "C:\WINDOWS\system32\OlePro32.dll" (File currently on disk was already up to date) ACTION: SystemFile: "C:\WINDOWS\system32\AsycFilt.dll" (File currently on disk was already up to date) NOTE: The file 'Ctl3d32.dll' was not copied because it is intended for use under Windows NT 3.51 only. It is not needed under Windows 95 or NT 4.0. ACTION: SystemFile: "C:\WINDOWS\system32\Ctl3d32.dll" (File currently on disk was already up to date) ACTION: SystemFile: "C:\WINDOWS\system32\ComCat.dll" (File currently on disk was already up to date) ACTION: DllSelfRegister: "C:\WINDOWS\system32\MSVBVM50.dll" ACTION: TLBRegister: "C:\WINDOWS\system32\StdOle2.tlb" ACTION: DllSelfRegister: "C:\WINDOWS\system32\OleAut32.dll" ACTION: DllSelfRegister: "C:\WINDOWS\system32\OlePro32.dll" ACTION: DllSelfRegister: "C:\WINDOWS\system32\ComCat.dll" NOTE: End of the bootstrapper section NOTE: Now spawning the main Setup program 'C:\WINDOWS\setup1.exe'.... ====> Error appears <============= Jack Visual Studio33 | | | | | Jack | Posted: Tue Feb 26 16:20:07 CST 2008 | Top | Visual Basic >> Problem with running setup in Windows Server 2003 I have found the problem but cannot explain it. It has nothing to do with Server. It behaves the same in WinXP. When the installation files are located in the folder named: dep-sclerose or even dep-s there is that problem. Changing hyphen to underscore eliminates that problem. But, if the hyphen is the cause of the problem, why folder named dep-test does not have a problem? Jack > Hello, > There is an apparent problem when running setup.exe (created by > vbasic Setup Wizard) in Server 2003. > The error is: > "Invalid command-line parameters. Unable to continue" > I know from the experience that that error appears always when trying to > run Setup1.exe alone, which is a part of whole installation package. > However, the user do not have access to that Setup1.exe file because it is > a compressed file, and the only executable file in installation package is > Setup.exe. > What user should do, so the setup package will run properly? > > The setup log looks like this: > ==================== > ACTION: TempFile: "C:\WINDOWS\setup1.exe" > (File was not found or was an older version -- new file copied) > > ACTION: RegKey: > "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion", > "SharedDLLs" > > ACTION: SharedFile: "C:\WINDOWS\system32\VB5StKit.dll" > (File currently on disk was already up to date) > > ACTION: SystemFile: "C:\WINDOWS\system32\MSVBVM50.dll" > (File currently on disk was already up to date) > > ACTION: SystemFile: "C:\WINDOWS\system32\StdOle2.tlb" > (File currently on disk was already up to date) > > ACTION: SystemFile: "C:\WINDOWS\system32\OleAut32.dll" > (File currently on disk was already up to date) > > ACTION: SystemFile: "C:\WINDOWS\system32\OlePro32.dll" > (File currently on disk was already up to date) > > ACTION: SystemFile: "C:\WINDOWS\system32\AsycFilt.dll" > (File currently on disk was already up to date) > > NOTE: The file 'Ctl3d32.dll' was not copied because it is intended for use > under Windows NT 3.51 only. It is not needed under Windows 95 or NT 4.0. > > ACTION: SystemFile: "C:\WINDOWS\system32\Ctl3d32.dll" > (File currently on disk was already up to date) > > ACTION: SystemFile: "C:\WINDOWS\system32\ComCat.dll" > (File currently on disk was already up to date) > > ACTION: DllSelfRegister: "C:\WINDOWS\system32\MSVBVM50.dll" > > ACTION: TLBRegister: "C:\WINDOWS\system32\StdOle2.tlb" > > ACTION: DllSelfRegister: "C:\WINDOWS\system32\OleAut32.dll" > > ACTION: DllSelfRegister: "C:\WINDOWS\system32\OlePro32.dll" > > ACTION: DllSelfRegister: "C:\WINDOWS\system32\ComCat.dll" > > NOTE: End of the bootstrapper section > > NOTE: Now spawning the main Setup program 'C:\WINDOWS\setup1.exe'.... > > ====> Error appears <============= > > Jack > > | | | | | Bob | Posted: Tue Feb 26 16:58:24 CST 2008 | Top | Visual Basic >> Problem with running setup in Windows Server 2003 >I have found the problem but cannot explain it. > It has nothing to do with Server. It behaves the same in WinXP. > When the installation files are located in the folder named: > dep-sclerose or even dep-s there is that problem. > Changing hyphen to underscore eliminates that problem. > But, if the hyphen is the cause of the problem, why > folder named dep-test does not have a problem? WAG: -s is being recognized as requesting a silent install while -t has no meaning; when the "-s" is removed the remaining fragment isn't valid | | | | | MikeD | Posted: Tue Feb 26 18:36:10 CST 2008 | Top | Visual Basic >> Problem with running setup in Windows Server 2003 Ah, that extra info about the hyphens clears things up. Hyphens are commonly used in command lines to specify parameters. This stems all the way back from the early days of DOS and it was common (and still is) to support either / or - characters. Paths and filenames get passed to Setup1.exe by Setup.exe via the command line. If those filenames or path include hyphens themselves, Setup1.exe can't properly parse the command line argument string. In the 3 example folders you mentioned, 2 have "-s" in them. That's a specific parameter that Setup1 checks for. The text following "-s" is invalid (because it's not a filename with a fully qualified path), so you get the error. OTOH, Setup1 doesn't check for a -t parameter so a folder named "dep-test" doesn't cause any problems. To get a better understanding, run Setup1 in the IDE per the instructions in the KB article below. HOWTO: Run Setup1.vbp in the Design Environment http://support.microsoft.com/kb/189738/en-us (this article covers the specifics for VB4, VB5, and VB6) In Form_Load of frmSetup1, place a break point on the line of code that calls "ProcessCommandLine". Here's a comment from that procedure: ------------ ' First, check to see if this is supposed to be a silent ' install (/s or -s on the command line followed by ' a log file name) and set global variables appropriately. ' ' If you are designing a silent install, the /s or -s ' command line parameter should be added to the setup.exe ' command. It will automatically be passed to setup1 as the ' first parameter. ' ' The filename that follows the /s or -s parameter must ' include the full path name. ----------------- In any case, you could modify the Setup1.vbp project yourself to fix this. Just make sure you don't break it in some other way while doing so. You're rather limited in how you fix this because you can't change what Setup1.exe passes to Setup1.exe. The only other character that could cause a similar problem is "q" (which indicates an SMS install). Since both these parameters are specified in the command line for running Setup.exe, though, you can control what these are. IOW, change the code to allow only the backslash and not the hypen. You can then still run a silent install if you want. You just must use /s instead of being able to use /s or -s. Another way to fix it would be to modify Setup1 to look for " -s" instead of "-s". But if the folder name were, for example, "dep -sclerose", you'd have the same problem. IMO, the best fix would be to get rid of the hyphens in the folder names. -- Mike Microsoft MVP Visual Basic >I have found the problem but cannot explain it. > It has nothing to do with Server. It behaves the same in WinXP. > When the installation files are located in the folder named: > dep-sclerose or even dep-s there is that problem. > Changing hyphen to underscore eliminates that problem. > But, if the hyphen is the cause of the problem, why > folder named dep-test does not have a problem? > Jack > > >> Hello, >> There is an apparent problem when running setup.exe (created by >> vbasic Setup Wizard) in Server 2003. >> The error is: >> "Invalid command-line parameters. Unable to continue" >> I know from the experience that that error appears always when trying to >> run Setup1.exe alone, which is a part of whole installation package. >> However, the user do not have access to that Setup1.exe file because it >> is a compressed file, and the only executable file in installation >> package is Setup.exe. >> What user should do, so the setup package will run properly? >> >> The setup log looks like this: >> ==================== >> ACTION: TempFile: "C:\WINDOWS\setup1.exe" >> (File was not found or was an older version -- new file copied) >> >> ACTION: RegKey: >> "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion", >> "SharedDLLs" >> >> ACTION: SharedFile: "C:\WINDOWS\system32\VB5StKit.dll" >> (File currently on disk was already up to date) >> >> ACTION: SystemFile: "C:\WINDOWS\system32\MSVBVM50.dll" >> (File currently on disk was already up to date) >> >> ACTION: SystemFile: "C:\WINDOWS\system32\StdOle2.tlb" >> (File currently on disk was already up to date) >> >> ACTION: SystemFile: "C:\WINDOWS\system32\OleAut32.dll" >> (File currently on disk was already up to date) >> >> ACTION: SystemFile: "C:\WINDOWS\system32\OlePro32.dll" >> (File currently on disk was already up to date) >> >> ACTION: SystemFile: "C:\WINDOWS\system32\AsycFilt.dll" >> (File currently on disk was already up to date) >> >> NOTE: The file 'Ctl3d32.dll' was not copied because it is intended for >> use under Windows NT 3.51 only. It is not needed under Windows 95 or NT >> 4.0. >> >> ACTION: SystemFile: "C:\WINDOWS\system32\Ctl3d32.dll" >> (File currently on disk was already up to date) >> >> ACTION: SystemFile: "C:\WINDOWS\system32\ComCat.dll" >> (File currently on disk was already up to date) >> >> ACTION: DllSelfRegister: "C:\WINDOWS\system32\MSVBVM50.dll" >> >> ACTION: TLBRegister: "C:\WINDOWS\system32\StdOle2.tlb" >> >> ACTION: DllSelfRegister: "C:\WINDOWS\system32\OleAut32.dll" >> >> ACTION: DllSelfRegister: "C:\WINDOWS\system32\OlePro32.dll" >> >> ACTION: DllSelfRegister: "C:\WINDOWS\system32\ComCat.dll" >> >> NOTE: End of the bootstrapper section >> >> NOTE: Now spawning the main Setup program 'C:\WINDOWS\setup1.exe'.... >> >> ====> Error appears <============= >> >> Jack >> >> > > | | | | | Jack | Posted: Tue Feb 26 18:58:09 CST 2008 | Top | Visual Basic >> Problem with running setup in Windows Server 2003 > >>>>>>>>>>>>big snip<<<<<<<< > IMO, the best fix would be to get rid of the hyphens in the folder names. > > -- > Mike > Microsoft MVP Visual Basic > Thank you Mike for your BIG and Loooong reply. I appreciate that. I wish I could tell all people on the planet not to use hyphen in the files (folders) name. Myself I never do and I tought my people not to do it as well, although I did not remember the reason for not doing so. Now I know. Jack | | | | | MikeD | Posted: Tue Feb 26 19:15:45 CST 2008 | Top | Visual Basic >> Problem with running setup in Windows Server 2003 > >> >>>>>>>>>>>>>big snip<<<<<<<< >> IMO, the best fix would be to get rid of the hyphens in the folder names. >> >> -- >> Mike >> Microsoft MVP Visual Basic >> > > Thank you Mike for your BIG and Loooong reply. Wasn't that big and long. <g> > I appreciate that. > I wish I could tell all people on the planet not to use hyphen in the > files (folders) name. It's only folders used during installation. So, tell the people to install from a folder that doesn't have a hyphen. Not that big deal, IMO. If doing a silent install, then you must also refrain from using a folder for the log file that contains a hyphen. But if you've got your Setup to create folders that contain hyphens and install files into those folders or even if the user chooses an application folder that contains a hyphen, there shouldn't be any problems (because Setup1 doesn't get passed that information via the command line, it reads it from the SETUP.LST file). -- Mike Microsoft MVP Visual Basic | | | | | mayayana | Posted: Tue Feb 26 21:07:37 CST 2008 | Top | Visual Basic >> Problem with running setup in Windows Server 2003 > (because Setup1 doesn't get passed that information via the > command line, it reads it from the SETUP.LST file). > Actually it does: ProcessCommandLine Command$, gfSilent, gstrSilentLog, gstrSrcPath, gstrAppRemovalLog, gstrAppRemovalEXE In the normal PDW (at least in VB6), Setup.exe does a few bootstrap operations, then runs setup1.exe, sending in a command line that setup1.exe uses to get its bearings. From the comments: ' ' We expect to find the source directory, ' name/path of the logfile, and name/path ' of the app removal executable, separated only by ' spaces ' | | | | | MikeD | Posted: Wed Feb 27 06:55:10 CST 2008 | Top | Visual Basic >> Problem with running setup in Windows Server 2003 > >> (because Setup1 doesn't get passed that information via the >> command line, it reads it from the SETUP.LST file). >> > > Actually it does: > > ProcessCommandLine Command$, gfSilent, gstrSilentLog, gstrSrcPath, > gstrAppRemovalLog, gstrAppRemovalEXE > > In the normal PDW (at least in VB6), Setup.exe does > a few bootstrap operations, then runs setup1.exe, sending in > a command line that setup1.exe uses to get its bearings. > > From the comments: > > ' > ' We expect to find the source directory, > ' name/path of the logfile, and name/path > ' of the app removal executable, separated only by > ' spaces > ' > > Right. I said Setup1 is not passed information about where the app is to be installed. -- Mike Microsoft MVP Visual Basic | | | | | kpg* | Posted: Wed Feb 27 16:22:31 CST 2008 | Top | Visual Basic >> Problem with running setup in Windows Server 2003 > >> >>>>>>>>>>>>>big snip<<<<<<<< >> IMO, the best fix would be to get rid of the hyphens in the folder >> names. >> >> -- >> Mike >> Microsoft MVP Visual Basic >> > > Thank you Mike for your BIG and Loooong reply. > I appreciate that. > I wish I could tell all people on the planet not to use hyphen in the > files (folders) name. > Myself I never do and I tought my people not to do it as well, > although I did not remember the reason for not doing so. > Now I know. > Jack lol. I still insist on the 8.3 notation. I must be old fashioned. ...and parinoid. kpg | | | | | | |
0 Response to "Invalid Command line Parameters Unable to Continue"
Post a Comment