Question scritp pour avoir la langue d'un os windows

Plus d'informations
il y a 13 ans 9 mois #12021 par kevin
bonjour,

j'ai suis tout nouveau dans le monde du script et j'essay de faire un script qui me donne des informations sur mon OS.
je suis bloqué voici mon script :

Function Get-OSInfo
{
param ([String]$ComputerName = '.')

$infos = Get-WmiObject Win32_OperatingSystem -ComputerName $ComputerName
$OSLanguage = \"\"
$OSLanguage = (Get-Wmiobject Win32_OperatingSystem).OSLanguage

$infos | Select-Object -property @{Name='OS'; Expression = {$_.caption}},
#@{Name='ComputerName'; Expression = {$_.Csname}},
@{Name='ServicePack'; Expression = {$_.csdversion}},
#@{Name='InstallationDate'; Expression ={[system.Management.ManagementDateTimeConverter]::ToDateTime($_.Installdate)}}
@{Name='Langue OS' ; Expression = {$_.OSLanguage}
Switch=($OSLanguage)

1036 = {\"Français\"};
1033 = {\"Anglais\"};
default = {\"Inconnue\"}

}
}

Get-OSInfo


Si quelq'un peu m'aider, cela serai super cool.
JE SUIS NOUVEAU DANS LE MONDE PS

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 13 ans 9 mois #12022 par Laurent Dardenne
Salut,
déjà lire la doc sur l'instruction Switch :
[code:1]
Get-Help Switch
[/code:1]
Ce qui donne :
[code:1]
Function Get-OSInfo {
param ([String]$ComputerName = '.')

$infos = Get-WmiObject Win32_OperatingSystem -ComputerName $ComputerName
$OSLanguage = (Get-Wmiobject Win32_OperatingSystem).OSLanguage

$infos | Select-Object -property @{Name='OS'; Expression = {$_.caption}},
#@{Name='ComputerName'; Expression = {$_.Csname}},
@{Name='ServicePack'; Expression = {$_.csdversion}},
#@{Name='InstallationDate'; Expression ={[system.Management.ManagementDateTimeConverter]::ToDateTime($_.Installdate)}}
@{Name='Code OSLangue' ; Expression = {$_.OSLanguage}},
@{Name='Langage' ; Expression = { Switch ($OSLanguage) {
1036 {\"Français\"; Break}
1033 {\"Anglais\"; Break}
default {\"Inconnue\"}
}
} }
}#Get-OSInfo

Get-OSInfo
[/code:1]
Ensuite l'usage du cmdlet New-Object simplifierait ton code :
[code:1]
Function Get-OSInfo {
param ([String]$ComputerName = '.')

$infos = Get-WmiObject Win32_OperatingSystem -ComputerName $ComputerName
$OSLanguage = (Get-Wmiobject Win32_OperatingSystem).OSLanguage

New-Object PSObject -property @{'OS'= $infos.caption;
'ServicePack'=$infos.csdversion;
'Code OSLangue'=$infos.OSLanguage;
'Langage'= Switch ($OSLanguage) {
1036 {\"Français\"; Break}
1033 {\"Anglais\"; Break}
default {\"Inconnue\"}
}
}#New-Object
}#Get-OSInfo

Get-OSInfo
[/code:1]

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 13 ans 9 mois #12024 par SiSMik
Je dirais même plus :)

[code:1]Function Get-OSInfo {
param ([String]$ComputerName = '.')

$infos = Get-WmiObject Win32_OperatingSystem -ComputerName $ComputerName

New-Object PSObject -property @{'OS'= $infos.caption;
'ServicePack'=$infos.csdversion;
'Code OSLangue'=$infos.OSLanguage;
'Langage'= Switch ($infos.OSLanguage) {
1036 {\"Français\"; Break}
1033 {\"Anglais\"; Break}
default {\"Inconnue\"}
}
}#New-Object
}#Get-OSInfo

Get-OSInfo[/code:1]

Pourquoi faire deux requ^petes WMI quand une seule suffit :)

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 13 ans 9 mois #12025 par kevin
Merci BCP.

Moi entre temps j'ai réussi un tit truc:
[code:1]param ([String]$ComputerName = '.')
$lang = (Get-WmiObject Win32_OperatingSystem -ComputerName $ComputerName).oslanguage
$switch = switch ($lang) `
{
1033 {\"English\"};
1036 {\"French\"};
default {\"Unknown\"}
}
$switch[/code:1]

en faite mon but finale est d'avoir plusieurs script. mais chaques script doit me sortir un résultat simple.
Mais je veux pas recopier tout ce que je trouve sur le net mais comprendre tout ce que je Fait.
Donc merci pour ta réponse sa va bien m'aider!!:)

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 13 ans 9 mois #12026 par kevin
cela va te faire rire mais j'ai mis sous forme de tableau mais à la base je voulais un résultat par ligne:( la maintenant je suis à la recherche ...:dry:

[code:1]Function Get-OSInfo
{
param ([String]$ComputerName = '.')

$infos = Get-WmiObject Win32_OperatingSystem -ComputerName $ComputerName

$infos | Select-Object -property @{Name='OS'; Expression = {$_.caption}},
@{Name='ServicePack'; Expression = {$_.csdversion}}

}
Get-OSInfo[/code:1]<br><br>Message édité par: ThePirateur, à: 15/06/12 15:46

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 13 ans 9 mois #12029 par kevin
J'ai Trouver!!!
Je suis japonnais je commence par la fin!!:woohoo:

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.049 secondes
Propulsé par Kunena