Jump to content

Recommended Posts

Posted

I'm having some difficulties with an msi that is within a folder within the temp directory.

I'm transfering many files to the temp dir, but here are my lines, I'm getting an error on the last line:

If Not FileExists(@TempDir & "\Software") Then DirCreate(@TempDir & "\Software")

FileInstall("C:\Users\mycomputer\Desktop\InstallTemp\Software\Installer v.12.msi", @TempDir & "\Software\Installer v.12.msi", 1)

$msiinstall=@TempDir & "\Software\Installer v.12.msi"

Posted

What's the error message?

If I posted any code, assume that code was written using the latest release version unless stated otherwise. Also, if it doesn't work on XP I can't help with that because I don't have access to XP, and I'm not going to.
Give a programmer the correct code and he can do his work for a day. Teach a programmer to debug and he can do his work for a lifetime - by Chirag Gude
How to ask questions the smart way!

  Reveal hidden contents

I hereby grant any person the right to use any code I post, that I am the original author of, on the autoitscript.com forums, unless I've specifically stated otherwise in the code or the thread post. If you do use my code all I ask, as a courtesy, is to make note of where you got it from.

Back up and restore Windows user files _Array.au3 - Modified array functions that include support for 2D arrays.  -  ColorChooser - An add-on for SciTE that pops up a color dialog so you can select and paste a color code into a script.  -  Customizable Splashscreen GUI w/Progress Bar - Create a custom "splash screen" GUI with a progress bar and custom label.  -  _FileGetProperty - Retrieve the properties of a file  -  SciTE Toolbar - A toolbar demo for use with the SciTE editor  -  GUIRegisterMsg demo - Demo script to show how to use the Windows messages to interact with controls and your GUI.  -   Latin Square password generator

Posted

Let me add a bit to this, any help would greatly be appreciated!

If Not FileExists(@TempDir & "Software") Then DirCreate(@TempDir & "Software")

FileInstall("C:UsersmycomputerDesktopInstallTempSoftwareInstaller v.12.msi", @TempDir & "SoftwareInstaller v.12.msi", 1)

$msiinstall=@TempDir & "SoftwareInstaller v.12.msi"

RunWait(@ComSpec & " /c " & 'msiexec.exe /i"' $msiinstall '"AUTO=1 EDITION="net" PRODUCT="scan" SERVER="192.168.2.1" /qn /norestart',"",@SW_HIDE)

Posted

(179) : ==> Error in expression.:

RunWait(@ComSpec & " /c " & 'msiexec.exe /i"' $msiinstall"AUTO=1 EDITION="net" PRODUCT="scan" SERVER="192.168.198.2.1" /qn /norestart',"",@SW_HIDE)

RunWait(^ ERROR

>Exit code: 1 Time: 65.840

Posted

Pay attention to the quotation marks.

UDF List:

  Reveal hidden contents

Updated: 22/04/2018

Posted (edited)

  On 6/19/2012 at 5:12 PM, 'ITGal said:

(179) : ==> Error in expression.:

RunWait(@ComSpec & " /c " & 'msiexec.exe /i"' $msiinstall"AUTO=1 EDITION="net" PRODUCT="scan" SERVER="192.168.198.2.1" /qn /norestart',"",@SW_HIDE)

RunWait(^ ERROR

>Exit code: 1 Time: 65.840

Every time you exit quotes to call a variable, or call a variable and then enter quotes, it must be proceeded by an ampersand (&).

And RunWait is a bit tricky... use ' to enter and exit from string, and use " to encapsulate strings. Remember that everthing after ComSpec is like plugging code directly into CMD. So if it needs its own quotes, you have to specify them.

EDIT: And spacing is quite annoying... so you have to watch for when you need spaces between strings and variables =D

RunWait(@ComSpec & ' /c msiexec.exe /i "' & $msiinstall & '" SERVER="192.168.198.2.1" /qn /norestart',"",@SW_HIDE)

EDIT2: To make sure the command you're plugging in is correct, do this:

$sCMD = 'msiexec.exe /i "' & $msiinstall & '" AUTO=1 EDITION="net" PRODUCT="scan"'
If msgbox(4 + 32 + 262144, @ScriptName, "Do you want to run the below command in CMD?" & @LF & @LF & $sCMD) = 6 Then
  RunWait(@ComSpec & ' /c ' & $sCmd)
Else
  Exit 1
EndIf

EDIT3: And wth... when I go to make an edit... some of my code and formatting disappears....

Edited by mechaflash213
  Reveal hidden contents

 

Posted (edited)

I feel sympathy for you =/. Trying to pass RunWait(@ComSpec) when calling ghostscript SUCKS!

Local $asFile[5]
$sIni = "serverappsPDF_MergePDF_MERGE.ini"
$sFilePath = IniRead($sIni, "File Locations", "Selected PDF", "")
$asFile = _PathSplit($sFilePath, $asFile[1], $asFile[2], $asFile[3], $asFile[4])
$sComplete = '"' & @AppDataDir & "PDF MergePROCESSING FOLDERComplete" & $asFile[3] & $asFile[4] & '"'
$sMainFile = ' "' & @AppDataDir & "PDF MergePROCESSING FOLDERMain" & $asFile[3] & $asFile[4] & '"'
$gs = '"' & @AppDataDir & 'PDF Mergeghostscriptgs8.63bingswin32c.exe"'
$gsOpts = ' -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -sOutputFile=' & $sComplete & $sMainFile & $sAppendFiles
$gs_cmd = $gs & $gsOpts
$fRun = RunWait($gs_cmd, @AppDataDir & "PDF MergePROCESSING FOLDERComplete", @SW_HIDE)

I spent a whole friggin day just debugging that

$sAppendFiles were passed as an argument to this function, and had to be built into a string of space delimited files... so the output looked like: ' "FileName" "FileName" "FileName" "FileName"'

Edited by mechaflash213
  Reveal hidden contents

 

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...