• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 836
  • Last Modified:

How do you run executables and their parameters inside of Microsoft Powershell?

I am attempting to run the following block of code, and I am getting a black DOS window to appear and disappear. I translated a batch file over to Microsoft Powershell. I know that the code for making the bubble works below, but I am having trouble finding out why the code that I am running to make the same executables that were working withing the batch file not working inside of Powershell. My end goal with this project is to call the powershell code and run it once versus having a batch file call it. This file will be used on a great number of PCs, so all of them will have Powershell and Windows XP SP 3.

Set-ExecutionPolicy RemoteSigned

if(!Test-Path C:\program Files\Logs\*.*)
	New-Item C:\Program Files\Logs -type directory

Invoke-Item uninstall_flash_player.exe /clean /silent

Invoke-Item msiexec.exe /I"install_flash_player_10_active_x.msi" REBOOT=ReallySuppress ALLUSERS=1 /qb-! /l*v "C:\Program Files\Logs\Adobe Flash Player 10.1 (EN).log"

Invoke-Item copy "mms.cfg" "%windir%\system32\macromed\flash\mms.cfg" /Y


#System Tray Balloon Popup 
     #The popup mesage 
     $Message="Flash has been upgraded to 10.1 Successfully Contact the Service Desk if you have issues after the install." 
     # Valid Message types "Info" "Error" "Warning" "None" 
    # The number of seconds to display the message. 
    #load Windows Forms and drawing assemblies 
    [reflection.assembly]::loadwithpartialname("System.Windows.Forms") | Out-Null 
    [reflection.assembly]::loadwithpartialname("System.Drawing") | Out-Null 
    #define an icon image pulled from PowerShell.exe 
    $icon=[system.drawing.icon]::ExtractAssociatedIcon((join-path $pshome powershell.exe)) 
    $notify = new-object system.windows.forms.notifyicon 
    $notify.icon = $icon 
    $notify.visible = $True 
    #define the tool tip icon based on the message type 
    switch ($messagetype) { 
     "Error" { $messageIcon=[system.windows.forms.tooltipicon]::Error} 
     "Info" {$messageIcon=[system.windows.forms.tooltipicon]::Info} 
     "Warning" {$messageIcon=[system.windows.forms.tooltipicon]::Warning} 
     Default {$messageIcon=[system.windows.forms.tooltipicon]::None} 

Open in new window

1 Solution
can I just check?  Are you tyring to run this code in a powershell window and it won't work or you are calling it from a file and it won't work.

And what errors is it showing if any?
Had to run a cmd utlilty in the past, this worked for me.
Place the entire cmd including variables into a single variable  ($d) and then execute a cmd.
in my example the exe was exchmbx, I had it in a foreach statement to do an array of users.
basicly I turn the entire statement into text and sent it to a command prompt.

$d = "exchmbx $b $userdn -move mmcexchange:$loc"
   #Write-Host $d  to see command line
   #execute command below
cmd /c $d
thenthorn1010Author Commented:
I am trying to run this from a command line script.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Problems using Powershell and Active Directory?

Managing Active Directory does not always have to be complicated.  If you are spending more time trying instead of doing, then it's time to look at something else. For nearly 20 years, AD admins around the world have used one tool for day-to-day AD management: Hyena. Discover why

Tackle projects and never again get stuck behind a technical roadblock.
Join Now