Install multiple hotfixes using powershell

Guys,
I need help in  installing multiple hot fixes  using powershell on our domain controllers. i searched a little on google/bing  but was unable to find  the solution may be i am searching wrong :) . The solution should install  multiple
hotfixes  and don't restart . restart can be done manually. 

My understanding is most Microsoft hotfixes should use the
Windows Installer Tool (msiinstaller). If you have a list of hotfixes to deploy you could put them all in a folder and have your script run each of them. 
If you run the hotfix in quiet mode (/q[n|b|r|f]), it looks like it
returns error code 3010 to indicate a reboot is required but doesn't reboot the machine (see also on TechNet List of error codes and error messages for Windows Installer processes in Office 2003
products and Office XP products which should apply to most hotfixes that use the Windows Installer Tool).
You could track each hotfix for this error and if it's returned use
Restart-Computer to restart the machine only once completed.
Jason Warren
@jaspnwarren
jasonwarren.ca
habaneroconsulting.com/Insights

Similar Messages

  • Install SQL server using powershell

    Hi Team,
    Greetings!!!
    I want to install SQL server using powershell.
    Please guide me how can I install SQL server using powershell.
    I am trying to install using the command :  " Invoke-Item SQLIPAK /AS /QFE:11.0.3393 //SQLADMIN:REDMOND\PSITADM /CLEANMSDB /NOLOGCOPY /AUTOTEMPFILES /PREVIEW"
    But it is throwing error as:
    Invoke-Item : A positional parameter cannot be found that accepts argument '/AS'.
    At line:1 char:1
    + Invoke-Item SQLIPAK.exe /AS /QFE:11.0.3393 //SQLADMIN:REDMOND\PSITADM /CLEANMSDB ...
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        + CategoryInfo          : InvalidArgument: (:) [Invoke-Item], ParameterBindingException
        + FullyQualifiedErrorId : PositionalParameterNotFound,Microsoft.PowerShell.Commands.InvokeItemCommand

    Hello,
    Ref to links
    http://msdn.microsoft.com/en-us/library/ms144259.aspx
    http://www.mssqltips.com/sqlservertip/2707/installing-sql-server-2012-on-windows-server-core-using-powershell/
    Please mark this reply as the answer or vote as helpful, as appropriate, to make it useful for other readers

  • Set storage quota on multiple mailboxes using PowerShell?

    I need to set storage quota limits on multiple mailboxes using PowerShell. I understand I can create a .csv file with aliases and pipe that into a cmdlet, eg.,
    Import-CSV "C:\temp\alias.csv" | % {Set-Mailbox -identity $_.alias -IssueWarningQuota 900mb -ProhibitSendQuota 950mb -ProhibitSendReceiveQuota 1gb -UseDatabaseQuotaDefaults $false
    Is there any other way of doing this with a much more robust script?
    Any help would be much appreciated.

A: Set storage quota on multiple mailboxes using PowerShell?

Hi,
Is there any special attribute for these multiple mailboxes? such as they are from a specific OU or a distribution group etc.
If there is, we can direct use the filter to pick out these mailboxes instead of create .csv file for them. The following example can set storage quota for mailboxes in a distrobution group Group1:
Get-DistributionGroupMember -Identity Group1 | ForEach{ Set-Mailbox -identity $_.Name -IssueWarningQuota 900mb -ProhibitSendQuota 950mb -ProhibitSendReceiveQuota 1gb -UseDatabaseQuotaDefaults $false}
The following example is used to set storage quota for mailboxes from Exchange Department:
Get-Recipient | Where-Object {$_.Department -eq 'Exchange'} | ForEach{ Set-Mailbox -identity $_.Name -IssueWarningQuota 900mb -ProhibitSendQuota 950mb -ProhibitSendReceiveQuota 1gb -UseDatabaseQuotaDefaults $false}
Regards,
Winnie Liang
TechNet Community Support

Hi,
Is there any special attribute for these multiple mailboxes? such as they are from a specific OU or a distribution group etc.
If there is, we can direct use the filter to pick out these mailboxes instead of create .csv file for them. The following example can set storage quota for mailboxes in a distrobution group Group1:
Get-DistributionGroupMember -Identity Group1 | ForEach{ Set-Mailbox -identity $_.Name -IssueWarningQuota 900mb -ProhibitSendQuota 950mb -ProhibitSendReceiveQuota 1gb -UseDatabaseQuotaDefaults $false}
The following example is used to set storage quota for mailboxes from Exchange Department:
Get-Recipient | Where-Object {$_.Department -eq 'Exchange'} | ForEach{ Set-Mailbox -identity $_.Name -IssueWarningQuota 900mb -ProhibitSendQuota 950mb -ProhibitSendReceiveQuota 1gb -UseDatabaseQuotaDefaults $false}
Regards,
Winnie Liang
TechNet Community Support

  • Split large .pptx file to multiple files using PowerShell

    Hi.
    I'm not a programmer and I have the task to split big .pptx file(>100 slides) to multiple .pptx files with 4 slides in each one and save them into SP library. It should be done on PowerShell.
    Thanks for any help!

    Hi,
    For splitting PowerPoint files into multiple parts, I would suggest you post this question to Office forum, you will get more help and confirmed answers there:
    http://social.technet.microsoft.com/Forums/office/en-US/home
    For uploading files to SharePoint Library using PowerShell, here are some links with script demos provided for your reference:
    http://social.technet.microsoft.com/wiki/contents/articles/19529.sharepoint-2010-upload-file-in-document-library-using-powershell.aspx
    http://spfileupload.codeplex.com/
    Best regards
    Patrick Liang
    TechNet Community Support

  • Creating multiple mailboxes using Powershell for users who already exist in AD

    Hi there,
    Wondering if anyone can help, I am wanting to use Powershell to run a command which references a CSV file to create a mailbox for a user who already exists in AD.
    It needs to reference the username, to ensure the correct user has a mailbox created (as mentioned they exist already in the domain), place them on a specific database (e.g DB1) and assign them an email address as well as possibly an alias email address
    too.
    Can anyone provide me the headings of the CSV file which would be needed as well as the powershell command to run. It would be great too if I could also set the quota sizes for the user at the same time of creating the mailbox, but if not possible or complicated
    I can run a script afterwards to do this. I would only want to warn them when their mailbox is 1.5GB in size and stop them sending when it reaches 2GB. 
    Thanks

    So create a csv file with the following headers and data
    UserID, Alias
    UserID should be the user SamAccountName, and the Alias is the Mailbox Alias that you want to set. Supposing that the csv file is named users.csv and located under C:\ , open the Exchange Management Console and run:
    $users = Import-Csv c:\users.csv
    Foreach ($user in $users) {
    Enable-Mailbox -Identity $user.UserID -alias $user.alias -database 'DB1'
    Set-Mailbox -Identity $user.UserID -IssueWarningQuota 1.5gb -ProhibitSendQuota 2gb 
    Please Mark As Answer if this helps
    ammarhasayen

  • SQL Agent jobs status for multiple servers using Powershell.

    Hi All,
    I am following website link:
    http://www.toadworld.com/platforms/sql-server/b/weblog/archive/2013/09/17/powershell-script-to-monitor-a-service-on-a-group-of-servers-html-formatted-email-output.aspx
    I require to gather status details about all the SQL Agent jobs in the environment on multiple SQL Servers.
    I tried to edit the script using:
    [void][System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SqlServer.SMO")
    $sqlServerName = 'localhost\developer'
    $sqlServer = New-Object Microsoft.SqlServer.Management.Smo.Server($sqlServerName)
    foreach($job in $sqlServer.JobServer.Jobs)
        $job | select Name, OwnerLoginName, IsEnabled, LastRunDate, LastRunOutcome, DateCReated, DateLastModified
    but SQL Agent jobs are not reflecting in the mail output...
    requesting help...!!
    Thanks in Advance.
    Hunt

    I've created a new script for you.  Let me know if you've any questions
    Create the function
    Function Get-SQLJobHTMLReport
    param(
    [String]$ComputerList,[string]$Outputfile,[String]$To,[String]$From,[string]$SMTPMail
    New-Item -ItemType file $Outputfile -Force
    # Function to write the HTML Header to the file
    Function writeHtmlHeader
    param($fileName)
    $date = ( get-date ).ToString(‘yyyy/MM/dd’)
    Add-Content $fileName “<html>”
    Add-Content $fileName “<head>”
    Add-Content $fileName “<meta http-equiv=’Content-Type’ content=’text/html; charset=iso-8859-1′>”
    Add-Content $fileName ‘<title>Service Status Report </title>’
    add-content $fileName ‘<STYLE TYPE=”text/css”>’
    add-content $fileName “<!–”
    add-content $fileName “td {“
    add-content $fileName “font-family: Tahoma;”
    add-content $fileName “font-size: 11px;”
    add-content $fileName “border-top: 1px solid #999999;”
    add-content $fileName “border-right: 1px solid #999999;”
    add-content $fileName “border-bottom: 1px solid #999999;”
    add-content $fileName “border-left: 1px solid #999999;”
    add-content $fileName “padding-top: 0px;”
    add-content $fileName “padding-right: 0px;”
    add-content $fileName “padding-bottom: 0px;”
    add-content $fileName “padding-left: 0px;”
    add-content $fileName “}”
    add-content $fileName “body {“
    add-content $fileName “margin-left: 5px;”
    add-content $fileName “margin-top: 5px;”
    add-content $fileName “margin-right: 0px;”
    add-content $fileName “margin-bottom: 10px;”
    add-content $fileName “”
    add-content $fileName “table {“
    add-content $fileName “border: thin solid #000000;”
    add-content $fileName “}”
    add-content $fileName “–>”
    add-content $fileName “</style>”
    Add-Content $fileName “</head>”
    Add-Content $fileName “<body>”
    add-content $fileName “<table width=’100%’>”
    add-content $fileName “<tr bgcolor=’#CCCCCC’>”
    add-content $fileName “<td colspan=’4′ height=’25′ align=’center’>”
    add-content $fileName “</td>”
    add-content $fileName “</tr>”
    add-content $fileName “</table>”
    # Function to write the HTML Header to the file
    Function writeTableHeader
    param($fileName)
    Add-Content $fileName “<tr bgcolor=#CCCCCC>”
    Add-Content $fileName “<td width=’10%’ align=’center’>ServerName</td>”
    Add-Content $fileName “<td width=’50%’ align=’center’>Name</td>”
    Add-Content $fileName “<td width=’10%’ align=’center’>OwnerLoginName</td>”
    Add-Content $fileName “<td width=’10%’ align=’center’>IsEnabled</td>”
    Add-Content $fileName “<td width=’10%’ align=’center’>LastRunDate</td>”
    Add-Content $fileName “<td width=’10%’ align=’center’>LastRunOutcome</td>”
    Add-Content $fileName “<td width=’10%’ align=’center’>DateCReated</td>”
    Add-Content $fileName “<td width=’10%’ align=’center’>DateLastModified</td>”
    Add-Content $fileName “</tr>”
    Function writeHtmlFooter
    param($fileName)
    Add-Content $fileName “</body>”
    Add-Content $fileName “</html>”
    Function writeDiskInfo
    param($filename,$Servername,$name,$OwnerLoginName,$IsEnabled,$LastRunDate,$LastRunOutcome,$DateCReated,$DateLastModified)
    Add-Content $fileName “<tr>”
    Add-Content $fileName “<td bgcolor=’#FF0000′ align=left ><b>$servername</td>”
    Add-Content $fileName “<td bgcolor=’#FF0000′ align=left ><b>$name</td>”
    Add-Content $fileName “<td bgcolor=’#FF0000′ align=left ><b>$OwnerLoginName</td>”
    Add-Content $fileName “<td bgcolor=’#FF0000′ align=left ><b>$IsEnabled</td>”
    Add-Content $fileName “<td bgcolor=’#FF0000′ align=left ><b>$LastRunDate</td>”
    Add-Content $fileName “<td bgcolor=’#FF0000′ align=left ><b>$LastRunOutcome</td>”
    Add-Content $fileName “<td bgcolor=’#FF0000′ align=left ><b>$DateCReated</td>”
    Add-Content $fileName “<td bgcolor=’#FF0000′ align=left ><b>$DateLastModified</td>”
    Add-Content $fileName “</tr>”
    writeHtmlHeader $Outputfile
    Add-Content $Outputfile “<table width=’100%’><tbody>”
    Add-Content $Outputfile “<tr bgcolor=’#CCCCCC’>”
    Add-Content $Outputfile “<td width=’100%’ align=’center’ colSpan=8><font face=’tahoma’ color=’#003399′ size=’2′><center><strong> SQL Server Agent Job Details</strong></font></td>”
    Add-Content $Outputfile “</tr>”
    writeTableHeader $Outputfile
    #Change value of the following parameter as needed
    Foreach($ServerName in (Get-Content $ComputerList))
    $sqlServer = New-Object Microsoft.SqlServer.Management.Smo.Server($ServerName)
    foreach($item in $sqlServer.JobServer.Jobs)
    Write-Host $sqlServer $item.name $item.OwnerLoginName $item.IsEnabled $item.LastRunDate $item.LastRunOutcome $item.DateCReated $item.DateLastModified
    writeDiskInfo $Outputfile $sqlServer $item.name $item.OwnerLoginName $item.IsEnabled $item.LastRunDate $item.LastRunOutcome $item.DateCReated $item.DateLastModified
    Add-Content $Outputfile “</table>”
    writeHtmlFooter $Outputfile
    Function sendEmail
    param($from,$to,$subject,$smtphost,$htmlFileName)
    [string]$receipients=”$to”
    $body = Get-Content $htmlFileName
    $body = New-Object System.Net.Mail.MailMessage $from, $receipients, $subject, $body
    $body.isBodyhtml = $true
    $smtpServer = $smtphost
    $smtp = new-object Net.Mail.SmtpClient($smtphost)
    $smtp.Send($body)
    write-output “Email Sent!!”
    $date = ( get-date ).ToString(‘yyyy/MM/dd’)
    sendEmail -from $From -to $to -subject “Service Status – $Date” -smtphost $SMTPMail -htmlfilename $Outputfile
    Get-SQLJobHTMLReport -ComputerList f:\powersql\server.txt -SMTPMail hq.abc.com -To [email protected] -From [email protected] -Outputfile F:\Powersql\jobs.htm
    --Prashanth

  • How can I seperate one string into multiple strings using PowerShell?

    New to PowerShell...how can I read/separate parts of a file name? For instance if I have a file name like "part1_part2_part3_part4.xls", how to separate this file name to four different parts? So I basically want to go from that file name,
    to four different strings like part1, part2, part3, and part4...as four separate strings. How can I get this done in PowerShell?
    Thanks

    You can try something like this
    PS> (Get-ChildItem part1_part2_part3_part4.xls).BaseName.Split('_')

  • To install multiple software in TS via variable list

    Wanna ask, im planning to use the install multiple app using dynamic variable list in my TS to install all my software. I see that the prerequisites in the software package program have to select the "Allow this program to be installed from the Install
    Package task sequence without being deployed". Do I have to update the package once I selected this option or don't need?

    Search the Net and found someone who is using the variable value to refer to the software package name (like what im doing right now). Im using the Install Package task by selecting the "Install software packages according to dynamic list" option.
    It says for packages need to put as below.
    Baseline Variables: PackageIDs:   Program Name:    
    Not sure how true is this, but if so, the variable that I should define in the collection is as below? Correct?
    Name: HPPACKAGE01:ABC00001 (package id)
    Value: DR - PRD - 3D DriveGuard (package name)

  • Flash player has been installed multiple time without errors but bbc news website and even flash player help say it isn't. How do i get out of this loop? - using windows 7 ultimate and latest IE11

    flash player has been installed multiple time without errors but bbc news website and even flash player help say it isn't. How do i get out of this loop? - using windows 7 ultimate and latest IE11

    I have had the same problem for WEEKS and I cannot access any sites that use Flash. Flash has been installed on this computer since I bought it in 2012. I have allowed auto updates but for weeks the updates never get past Step 2 - is this because I do NOT want the Google Tool bar? I use NO tool bars as there is only 6 inches of vertical screen space. Is this because I uncheck wanting Chrome as a default browser?  It is already installed, I just don't use it.  I came to this site and ran the check is it installed and the system says it is either not installed or not enabled. Version 14 just downloaded about 30 minutes ago - but did not progress to Step 3 although a pop up screen came up with a finish button, which I clicked. WHAT is the problem and how do I fix it?  If this were just a compatibility bug between IE11 and Adobe they have had plenty of time to fix it.
    Stephanie HC

  • How do i install mysql on windows server 2012 r2 using powershell(automate)??

    i have a requirement of installing the mysql server with one click deployment using power shell by passing the parameters needed into the mysql console. can i achieve that ?
    can  anyone help me in doing that?
    thanks in advance.
    Suresh Gaddam

    Hi Suresh,
    This forum is for SCOM related questions, it seems like that you are asking for powershell script to install Mysql. From my point of view, I don't think that using powershell to install Mysql is an easy way, as it is hard to say whether Powershell can get
    information from Mysql install console with some API.
    In addition, for further assistance, please contact MySQL forum and Powershell forum.
    Thanks for your understanding!
    Regards,
    Yan Li
    Regards, Yan Li

  • How to Install DNS ROLE and its FQDN service and Reverse Lookup zone in Server Core using Powershell?

    Hi
    I am Setting A Lab Scenario That the PC name "Core2012" i.e. Server Core 2012 Will be Domain Controller.
    Using PowerShell I have done this Task
    Change hostname ; Configure IP address and Preferred DNS address ; Disable IPv6 ;
    Configure Firewall ; Even Active Directory Role install.
    Now problem occur
    Well I have know to install DNS role install-WindowsFeature DNS
    Ok
    But; 
    How to configure FQDN ; Restore mode password ; Setting up global catalog server ;and configure Reverse Lookup zone Using powershell
    I have search many Forums but I am not getting to touch with it.
    So I Need a help to set and Configure DNS using Powershell
    Thank You!!!
    sagarpdalvi

    Hi Sagarpdalvi,
    To set the Safe mode password with powershell, please refer to the cmdlet Install-ADDSDomainController, to enable global catalog(GC), please run the cmdlet "Set-ADObject" after install Active Directory on the core server, to configure Reverse Lookup zone,
    please refer to the cmdlet
    Add-DnsServerPrimaryZone.
    To configure DC with powershell, please check the scripts:
    Installing a Domain Controller on Windows Server 2012
    R2 Core
    Enabling and Disabling the Global Catalog
    To configure DNS, the Domain Name System (DNS) Server Cmdlets should be helpful for you:
    http://technet.microsoft.com/en-us/library/jj649850.aspx
    I hope this helps.

  • Install workflow manager using DSC powershell

    Hi,
    i am trying to install workflow manager using DSC powershell.
    I am using WebpiCmd.exe to install it.
    Below is the DSC powershell script
    configuration C_WFMgr
        Node $AllNodes.NodeName
            Script WF_Install
                GetScript = { @{ Name = "WF_Install" } }
                TestScript = {                
                    $false
                SetScript =
                $currentPrincipal = New-Object Security.Principal.WindowsPrincipal( [Security.Principal.WindowsIdentity]::GetCurrent() )
                if ($currentPrincipal.IsInRole( [Security.Principal.WindowsBuiltInRole]::Administrator ) -eq $false) {
                (get-host).UI.RawUI.Backgroundcolor="DarkRed"                                   
                    write-Verbose "Warning: PowerShell is not running as an Administrator.`n"  
                    exit 
                 else
                    #set-executionpolicy "Execution user account"
                    write-Verbose $currentPrincipal.Identity.Name
                    write-Verbose "Warning: PowerShell is running as an Administrator.`n"                
                    Write-Verbose "Workflow Manager installation started.."
                    $cmd = "& 'C:\WorkflowManagerFiles\bin\WebpiCmd.exe' /Install /Products:WorkflowManager /XML:c:/WorkflowManagerFiles/feeds/latest/webproductlist.xml /log:C:/Users/backup/t1.txt
    /AcceptEula"
                    Invoke-Expression $cmd | Write-Verbose                             
    Below is the error message
    Started downloading products...
     Started installing Products...
     Started installing: 'Execute ASP.NET IIS Registration tool
     Started downloading: 'Workflow Manager Client 1.0 Refresh'
     Downloaded: 'Workflow Manager Client 1.0 Refresh'
     Started downloading: 'Service Bus 1.0'
     Downloaded: 'Service Bus 1.0'
     Started downloading: 'Workflow Manager 1.0'
     Downloaded: 'Workflow Manager 1.0'
     Install completed (Success): 'Execute ASP.NET IIS Registra
    tion tool'
     Execute ASP.NET IIS Registration tool : Installed
     Started installing: 'Workflow Manager Client 1.0 Refresh'
     Install completed (Failure): 'Workflow Manager Client 1.0
    Refresh'
     WorkflowClient : Failed.
     Error opening installation log file. Verify that the speci
    fied log file location exists and is writable.
     Started installing: 'Service Bus 1.0'
     Install completed (Failure): 'Service Bus 1.0'
     ServiceBus : Failed.
     Error opening installation log file. Verify that the speci
    fied log file location exists and is writable.
     DependencyFailed: Workflow Manager 1.0
     Verifying successful installation...
     Execute ASP.NET IIS Registration tool              True
     Workflow Manager Client 1.0 Refresh                False
         Log Location: C:\Windows\system32\config\systemprofile
    \AppData\Local\Microsoft\Web Platform Installer\logs\install\2015-01-02T14.58.57\WorkflowManagerClient_x64.txt
     Service Bus 1.0                                    False
         Log Location: C:\Windows\system32\config\systemprofile
    \AppData\Local\Microsoft\Web Platform Installer\logs\install\2015-01-02T14.58.57\Service_Bus.txt
     Workflow Manager 1.0                               False
     Install of Products: FAILURE

    I am pretty sure that DSC requires WFM.  If  I am right then WFM is in use and cannot be replaced unless you specify another logfile location.  Look at the DSC and see how to specify a new log location that can be used for the install. 
    If the MSU is built correctly then you will require a reboot to update the install.
    Try just doing WFM alone until you work it out.
    I also recommend posting in the Management forum for any other issues that might be known.
    Management
    DSC is a work in progress so many things have to be worked out as you need them.  Be sure to get the latest kits.  I think we are at Wave 9 now.
    PowerShell
    DSC Resource Kit Wave 9
    ¯\_(ツ)_/¯

  • Using Powershell to set Multiple timed.servers with variables

    Having an issue using PowerShell to set 3 timed.servers which are defined in a variable. Running the commands: $TimeServers = "IPaddress1,IPaddress2,IPaddress3"Set-NaOption -OptionName timed.servers -OptionValue $TimeServers Thanks in advance!

    Hi, The Set-NaOption CmdLet -optionvalue parameter expects a string and it shouldn't matter if that's a comma delimited string containing multiple IP Addresses. I noticed that whilst the cmdlet thows an error it does actually set the option value for all servers so this seems like it could be a bug (IMO). It might be possible to invoke the API using "Invoke-NaSystemApi" but I checked the ZAPI and noticed this also fails using ZExplore from the SDK: ZAPI Request: <?xml version="1.0" encoding="UTF-8"?>
    <netapp  xmlns="http://www.netapp.com/filer/admin" version="1.21">
      <options-set>
        <name>timed.servers</name>
        <value>192.168.100.10,192.168.100.11,192.168.100.12</value>
      </options-set>
    </netapp> ZAPI Results: <?xml version='1.0' encoding='UTF-8' ?>
    <netapp version='1.1' xmlns='http://www.netapp.com/filer/admin'>
        <!-- Output of options-set [Execution Time: 8610 ms] -->
        <results reason='Unable to set option: timed.servers' errno='13001' status='failed'>
            <cluster-constraint>same_preferred</cluster-constraint>
            <cluster_constraint>same_preferred</cluster_constraint>
            <message>1 entry was deleted.
    </message>
        </results>
    </netapp> So i think the options are either using the "Set-NaOption" cmdlet with the -SilentlyContinue parameter or the "Invoke-NaSsh" cmdlet with -ErrorAction stop.As a work around i'd recommend something like: [String]$servers = "192.168.100.10,192.168.100.11,192.168.100.12"
    [String]$command = "options timed.servers $servers"
    Try{
       Invoke-NaSsh -Command $command -ErrorAction Stop
       Write-Host "Executed Command: $command"   
    }Catch{
       Write-Warning -Message $("Failed Executing Command: $command. Error " + $_.Exception.Message)
    } Hope that helps /matt

  • Install Windows server 2012 using powershell

    Hi Folks,
    How to Install Windows server 2012 using powershell.
    Thanks,

    Hi,
    According to your post, my understanding is that you want to install Windows server 2012 via PowerShell.
    Per the previous thread, we could not install Windows server 2012 directly via PowerShell.
    https://social.technet.microsoft.com/Forums/en-US/53f82989-4b9c-4197-9ff1-03e96c852eb7/how-to-install-windows-server-2012-directly-in-vhd-file-using-powershell?forum=winserver8setup
    As this is the forum for SharePoint server on-premise, I’m not familiar with the Windows server, for this issue, I recommend you can post a new question in the forum for Windows server.
    https://social.technet.microsoft.com/Forums/en-US/home?forum=winserver8setup
    More experts will assist you, then you will get more information relation to Windows server.
    Thank you for your understanding and support.
    More reference:
    http://vegibit.com/install-and-configure-windows-server-2012-with-windows-powershell/
    Thanks & Regards,
    Jason
    Jason Guo
    TechNet Community Support

  • How to Install/UnInstall Visual studio extension using PowerShell

    Hi all.
    I try to install / uninstall visual studio extension use PowerShell script
    But I just can find the Install like: start-process $visualextendsionpath.
    I can't not find the way to uninstall the extension.
    Do I use this command to install is correct? And please suggest me the way to unInstall the extension by PowerShell script.
    Thank

    Hi Bruce,
    In addition, Since I'm not familar the VSIX, however, to uninstall package with powershell, these cmdlets are for your reference:
    Removes an app package (.appx): Remove-AppxPackage
    To get the installed package :
    Get-AppxPackage
    Or if you want to uninstall app listed in 'Add or Remove Programs', please also check this script:
    $app = Get-WmiObject -Class Win32_Product | Where-Object {
    $_.Name -match "Software Name"
    $app.Uninstall()
    If there is anything regarding this script, please feel free to post back.
    Best Regards,
    Anna Wang

  • Maybe you are looking for