Showing posts with label wmi. Show all posts
Showing posts with label wmi. Show all posts
Friday, May 15, 2015
LSPCI using WMI ( WMIC )
From Command Prompt:
Wmic path win32_pnpentity where "deviceid like '%PCI%'" get name,deviceid
with powershell:
gwmi win32_pnpentity | where{$_.deviceid -match "PCI"} | select name,deviceid
Monday, September 9, 2013
Update DNS Server setting on Multiple Servers with powershell
Had to update the DNS server settings on a few servers (80+).
Because I had a mix 23/28/28r2/12 servers decided wmi was the path forward + powershell.
issues with when doing contains, until I performed a convert to string [String]
Stumped by the String setting for a little while was trying .tostring()
Btw: some servers dont reply correctly to WMI so... prepared to check manually (and maybe fix wmi)
Because I had a mix 23/28/28r2/12 servers decided wmi was the path forward + powershell.
Script in 3 parts:
- check all the servers to see if hard code to old DC
- Update the DHCP server options on all authorised DHCP servers
- Purge any scope with setting for old DC to use the server option
#StartHere :) $OUName= 'OU=Servers,DC=KoolKids' $TheComputers = Get-ADComputer -filter * -searchbase $OUName $results = @() Foreach ($server in $TheComputers) { if(Test-Connection $server.name -Count 1 -quiet){ $NICs = Get-WMIObject Win32_NetworkAdapterConfiguration -computername $server.name| where{$_.IPEnabled -eq “TRUE”} Foreach($NIC in $NICs) { $FTW=$NIC.DNSServerSearchOrder $FTW =[String]$FTW # write-host $FTW If ($FTW.contains("10.10.3.1")) { $results += New-Object PSObject -Property @{ Server = $server.name DNS = $FTW } #update the DNS Server for this NIC $DNSServers = "172.18.0.10","172.18.0.11" $NIC.SetDNSServerSearchOrder($DNSServers) } } } } #set the default server scope options to correct setting foreach ($dhcpserver in Get-DhcpServerInDC){ if(Test-Connection $dhcpserver.DNSName -Count 1 -Quiet){ #Remarked out so that all active DHCP servers get updated! #If ($FTW.contains("10.10.3.1")) { $FixScope=[System.Net.Dns]::GetHostAddresses($dhcpserver.DNSName).IPAddressToString, "172.18.0.10", "172.18.0.11" Set-DhcpServerv4OptionValue -ComputerName $dhcpserver.DNSName -OptionId 6 -Value $FixScope #} } } #clear out the scope options # WARNING SERVER OPTIONS MUST HAVE a SETTING OR BAD THINGS HAPPEN foreach ($dhcpserver in Get-DhcpServerInDC){ foreach ($TheScope in (Get-dhcpserverv4scope -computername $dhcpserver.DnsName)){ $target=$null $Target=Get-DhcpServerv4OptionValue -ComputerName $dhcpserver.DNSName -OptionId 6 -ScopeId $TheScope.ScopeId -ErrorAction SilentlyContinue $Target=[String]$target.Value If ($Target.contains("10.10.3.1")) { Remove-DhcpServerv4OptionValue -ComputerName $dhcpserver.DNSName -OptionId 6 -ScopeId $TheScope.ScopeId } } }
Friday, July 8, 2011
wmic “Invalid XSL format (or) file name.”
So on my windows 7 box trying to:
wmic product get /format:csv
produces a output:
Invalid XSL format (or) file name.
Located teh csv.xsl file in C:\windows\system32\wbem\en-US
Guessed that it was unable to locate the xsl format file...
so copied it to the local path and it worked !
Confirmed this with Process monitor :-(
It seems to be looking for the correct locale so I added a C:\windows\system32\wbem\en-US to C:\windows\system32\wbem\en-AU
since we all don't live in the US of A... :-|
Alternative options are:
I just copied to C:\windows\system32\wbem\en-US\*.xls to C:\windows\system32
Subscribe to:
Posts (Atom)