Solved

use Powershell to install an MSI located on a web site with a username pwd

Posted on 2014-03-24
6
277 Views
Last Modified: 2014-04-25
I have an MSI located on a web site that is secured with a basic username/pwd.

I need to use powershell to install it on a local server.
What syntax do I need to use for that?

here is what I have tried:
A) msiexec /i "https://Mysite.myserver.com/Myinstall.msi"
B) start-process -filepath msiexec.exe -argumentlist "/i https://Mysite.myserver.com/Myinstall.msi"

Each time I run these it tells me it can't locate the MSI. I suspect it is because of the username/pwd on the web site.

Ideas?
0
Comment
Question by:JasonLattin
  • 4
  • 2
6 Comments
 
LVL 19

Accepted Solution

by:
Raheman M. Abdul earned 500 total points
ID: 39951912
Try this:

$source = "https://Mysite.myserver.com/Myinstall.msi"

$destination = "c:\temp\Myinstall.msi"

$userid="usernameHere"

$passwd="passwordHere"


$client = New-Object System.Net.Webclient

$client.Credentials = New-Object System.Net.NetworkCredential($userid,$passwd)

$client.DownloadFile($source, $destination)

# Wait until file downloaded.
Start-Sleep -Seconds 10  

while(!(Test-Path $destination)) {
  Start-Sleep -Seconds 10;
 }

msiexec /i $destination
0
 

Author Comment

by:JasonLattin
ID: 39952258
@Raheman
Your script works fine if the file is on a regular http site but it fails on an https site. My site is secured with a certificate, requiring https.

Ideas?
0
 

Author Comment

by:JasonLattin
ID: 39952268
@Raheman
Further testing shows that it isnt the certificate / https that is breaking the script. It seems to be my username/pwd on that site. If I open the site to not require a username/pwd then your script works like a charm.
Just need to figure out how to address the username/pwd issue for the site.
0
Free eBook: Backup on AWS

Everything you need to know about backup and disaster recovery with AWS, for FREE!

 
LVL 19

Expert Comment

by:Raheman M. Abdul
ID: 39952729
For that the page source is required then we can parse and use the login details to enter to the site. otherwise we can use sendkeys()
is that externall site or internal site?
0
 

Author Comment

by:JasonLattin
ID: 39953239
@Raheman
The MSI is on an external web site. it never prompts for login so i'm not sure how sendkeys() will work but i am sure you have other thoughts.
0
 

Author Closing Comment

by:JasonLattin
ID: 40022632
This works like a charm. Does not work for HTTPS sites but for regular sites it works fine.
0

Featured Post

Enterprise Mobility and BYOD For Dummies

Like “For Dummies” books, you can read this in whatever order you choose and learn about mobility and BYOD; and how to put a competitive mobile infrastructure in place. Developed for SMBs and large enterprises alike, you will find helpful use cases, planning, and implementation.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

A project that enables an administrator to perform actions within a user session context not just at the time of login but any time later on day(s) or week(s) later.
Previously, on our Nano Server Deployment series, we've created a new nano server image and deployed it on a physical server in part 2. Now we will go through configuration.
This tutorial will walk an individual through locating and launching the BEUtility application and how to execute it on the appropriate database. Log onto the server running the Backup Exec database. In a larger environment, this would generally be …
This tutorial will walk an individual through the steps necessary to configure their installation of BackupExec 2012 to use network shared disk space. Verify that the path to the shared storage is valid and that data can be written to that location:…

733 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question