J'ai l'immense, et grandiloquent, plaisir de vous annoncer WMISU.EXE
Il s'agit d'un (tout) petit utilitaire permettant de récupérer une
information de WMI, en invite de commande. Avec une utilisation facile
dans un Batch.
Certes, il existe déjà WMIC, en standard dans Windows, depuis longtemps.
Mais WMIC, bien que puissant, est affreusement complexe.
Pour WMISU, j'ai simplifié à mort. Je suis parti du principe que WMI
sert le plus souvent sur le poste local, et pour voir des informations.
Donc, exit les accès distants, les affectations de valeurs, ou la
personnification (on travaille avec l'utilisateur courant). WMISU sert à
visualiser (d'ailleurs, le nom est la contraction de WMI + VISU).
Le résultat est un utilitaire de 10 ko, téléchargeable ici :
http://mclaveau.com/gvrac
Quelques exemples d'utilisation:
wmisu Win32_Process CommandLine "Name='iexplore.exe'"
donne la ligne de commande qui a servi à lancer
Internet-Explorer (qui doit être lancé)
wmisu Win32_DiskDrive SerialNumber
donne le n° de série des disques durs
wmisu Win32_BIOS Caption
donne le nom du Bios
wmisu Win32_BIOS Manufacturer
donne le nom du constructeur
wmisu Win32_ComputerSystem
donne la liste des propriétés de la classe
Win32_ComputerSystem
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jean-Claude BELLAMY
"MCI (ex do ré Mi chel la si do) [MVP]" a écrit dans le message de news:
Bonsoir !
J'ai l'immense, et grandiloquent, plaisir de vous annoncer WMISU.EXE Il s'agit d'un (tout) petit utilitaire permettant de récupérer une information de WMI, en invite de commande. Avec une utilisation facile dans un Batch.
Très sympa tout çà, mon petit Michel, merci, mais .. euh ... excuse-moi de te demander pardon, quand je le lance sans paramètre ou avec "/?" , j'obtiens cette injure :
Exception non gérée : System.Runtime.InteropServices.COMException (0x80041021): Exception de HRESULT : 0x80041021 à Microsoft.JScript.LateBinding.Call(Object[] arguments, Boolean construct, Boolean brackets, VsaEngine engine) à JScript 0.Global Code() à JScript Main.Main(String[] )
Avoue que çà la fout mal, surtout un Vendredi 13 veille de la St Valentin !!!! ;-) (Ne cherche pas, çà n'a aucun rapport! ;-))
Mais heureusement, quand on est plus "conforme au bon goût", cela fonctionne bien ! :-)
En exécutant : wmisu Win32_AccountSID Element j'ai bien obtenu la liste de tous les comptes et groupes de ma babasse
En exécutant : wmisu Win32_AccountSID Setting j'ai bien obtenu la liste de tous les SID
MAIS en exécutant : wmisu Win32_AccountSID setting element (j'espérais bêtement un panachage des 2 commandes précédentes, ce que je fais dans mon script "name2sid.wsf"), je me suis goinfré une injure analogue à la précédente, mais avec le code 0x80041017 cette fois-ci ! Exception non gérée : System.Runtime.InteropServices.COMException (0x80041017): Exception de HRESULT : 0x80041017 ...
Bon, c'est tout, tu en fais ce que tu veux, moi ce que j'en dis, hein , ... En tout cas, il est bien pratique ton utilitaire ! Et faire tenir çà en 10 ko ...
Une taille aussi réduite, çà m'évoque une apprentie danseuse à l'Opéra de Paris ! Ben oui, c'est un ... "p'tit rat, wmisu" !
OK, ..., je sors ! ;-)
-- May the Force be with You! La Connaissance s'accroît quand on la partage ---------------------------------------------------------- Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org
"MCI (ex do ré Mi chel la si do) [MVP]" <enleverlesO.OmcO@OmclaveauO.com> a
écrit dans le message de news:OzeH5lfjJHA.5732@TK2MSFTNGP05.phx.gbl...
Bonsoir !
J'ai l'immense, et grandiloquent, plaisir de vous annoncer WMISU.EXE
Il s'agit d'un (tout) petit utilitaire permettant de récupérer une
information de WMI, en invite de commande. Avec une utilisation facile
dans un Batch.
Très sympa tout çà, mon petit Michel, merci, mais .. euh ... excuse-moi de
te demander pardon, quand je le lance sans paramètre ou avec "/?" ,
j'obtiens cette injure :
Exception non gérée : System.Runtime.InteropServices.COMException
(0x80041021):
Exception de HRESULT : 0x80041021
à Microsoft.JScript.LateBinding.Call(Object[] arguments, Boolean
construct, Boolean brackets, VsaEngine engine)
à JScript 0.Global Code()
à JScript Main.Main(String[] )
Avoue que çà la fout mal, surtout un Vendredi 13 veille de la St Valentin
!!!! ;-)
(Ne cherche pas, çà n'a aucun rapport! ;-))
Mais heureusement, quand on est plus "conforme au bon goût", cela
fonctionne bien ! :-)
En exécutant :
wmisu Win32_AccountSID Element
j'ai bien obtenu la liste de tous les comptes et groupes de ma babasse
En exécutant :
wmisu Win32_AccountSID Setting
j'ai bien obtenu la liste de tous les SID
MAIS en exécutant :
wmisu Win32_AccountSID setting element (j'espérais bêtement un panachage
des 2 commandes précédentes, ce que je fais dans mon script "name2sid.wsf"),
je me suis goinfré une injure analogue à la précédente, mais avec le code
0x80041017 cette fois-ci !
Exception non gérée : System.Runtime.InteropServices.COMException
(0x80041017):
Exception de HRESULT : 0x80041017
...
Bon, c'est tout, tu en fais ce que tu veux, moi ce que j'en dis, hein , ...
En tout cas, il est bien pratique ton utilitaire !
Et faire tenir çà en 10 ko ...
Une taille aussi réduite, çà m'évoque une apprentie danseuse à l'Opéra de
Paris !
Ben oui, c'est un ... "p'tit rat, wmisu" !
OK, ..., je sors ! ;-)
--
May the Force be with You!
La Connaissance s'accroît quand on la partage
----------------------------------------------------------
Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org
"MCI (ex do ré Mi chel la si do) [MVP]" a écrit dans le message de news:
Bonsoir !
J'ai l'immense, et grandiloquent, plaisir de vous annoncer WMISU.EXE Il s'agit d'un (tout) petit utilitaire permettant de récupérer une information de WMI, en invite de commande. Avec une utilisation facile dans un Batch.
Très sympa tout çà, mon petit Michel, merci, mais .. euh ... excuse-moi de te demander pardon, quand je le lance sans paramètre ou avec "/?" , j'obtiens cette injure :
Exception non gérée : System.Runtime.InteropServices.COMException (0x80041021): Exception de HRESULT : 0x80041021 à Microsoft.JScript.LateBinding.Call(Object[] arguments, Boolean construct, Boolean brackets, VsaEngine engine) à JScript 0.Global Code() à JScript Main.Main(String[] )
Avoue que çà la fout mal, surtout un Vendredi 13 veille de la St Valentin !!!! ;-) (Ne cherche pas, çà n'a aucun rapport! ;-))
Mais heureusement, quand on est plus "conforme au bon goût", cela fonctionne bien ! :-)
En exécutant : wmisu Win32_AccountSID Element j'ai bien obtenu la liste de tous les comptes et groupes de ma babasse
En exécutant : wmisu Win32_AccountSID Setting j'ai bien obtenu la liste de tous les SID
MAIS en exécutant : wmisu Win32_AccountSID setting element (j'espérais bêtement un panachage des 2 commandes précédentes, ce que je fais dans mon script "name2sid.wsf"), je me suis goinfré une injure analogue à la précédente, mais avec le code 0x80041017 cette fois-ci ! Exception non gérée : System.Runtime.InteropServices.COMException (0x80041017): Exception de HRESULT : 0x80041017 ...
Bon, c'est tout, tu en fais ce que tu veux, moi ce que j'en dis, hein , ... En tout cas, il est bien pratique ton utilitaire ! Et faire tenir çà en 10 ko ...
Une taille aussi réduite, çà m'évoque une apprentie danseuse à l'Opéra de Paris ! Ben oui, c'est un ... "p'tit rat, wmisu" !
OK, ..., je sors ! ;-)
-- May the Force be with You! La Connaissance s'accroît quand on la partage ---------------------------------------------------------- Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org
Lognoul Marc [MVP]
J'imagine que si vous n'appréciez que modérément WMIC, PouvoirCoquille ne vous intéressera pas: gwmi -class Win32_AccountSID| Select setting,element
-- Marc [MCSE, MCTS, MVP] [Heureux celui qui a pu pénétrer les causes secrètes des choses] [Blog: http://www.marc-antho-etc.net/blog/]
"Jean-Claude BELLAMY" wrote in message news:
"MCI (ex do ré Mi chel la si do) [MVP]" a écrit dans le message de news:
Bonsoir !
J'ai l'immense, et grandiloquent, plaisir de vous annoncer WMISU.EXE Il s'agit d'un (tout) petit utilitaire permettant de récupérer une information de WMI, en invite de commande. Avec une utilisation facile dans un Batch.
Très sympa tout çà, mon petit Michel, merci, mais .. euh ... excuse-moi de te demander pardon, quand je le lance sans paramètre ou avec "/?" , j'obtiens cette injure :
Exception non gérée : System.Runtime.InteropServices.COMException (0x80041021): Exception de HRESULT : 0x80041021 à Microsoft.JScript.LateBinding.Call(Object[] arguments, Boolean construct, Boolean brackets, VsaEngine engine) à JScript 0.Global Code() à JScript Main.Main(String[] )
Avoue que çà la fout mal, surtout un Vendredi 13 veille de la St Valentin !!!! ;-) (Ne cherche pas, çà n'a aucun rapport! ;-))
Mais heureusement, quand on est plus "conforme au bon goût", cela fonctionne bien ! :-)
En exécutant : wmisu Win32_AccountSID Element j'ai bien obtenu la liste de tous les comptes et groupes de ma babasse
En exécutant : wmisu Win32_AccountSID Setting j'ai bien obtenu la liste de tous les SID
MAIS en exécutant : wmisu Win32_AccountSID setting element (j'espérais bêtement un panachage des 2 commandes précédentes, ce que je fais dans mon script "name2sid.wsf"), je me suis goinfré une injure analogue à la précédente, mais avec le code 0x80041017 cette fois-ci ! Exception non gérée : System.Runtime.InteropServices.COMException (0x80041017): Exception de HRESULT : 0x80041017 ...
Bon, c'est tout, tu en fais ce que tu veux, moi ce que j'en dis, hein , ... En tout cas, il est bien pratique ton utilitaire ! Et faire tenir çà en 10 ko ...
Une taille aussi réduite, çà m'évoque une apprentie danseuse à l'Opéra de Paris ! Ben oui, c'est un ... "p'tit rat, wmisu" !
OK, ..., je sors ! ;-)
-- May the Force be with You! La Connaissance s'accroît quand on la partage ---------------------------------------------------------- Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org
J'imagine que si vous n'appréciez que modérément WMIC, PouvoirCoquille ne
vous intéressera pas: gwmi -class Win32_AccountSID| Select setting,element
--
Marc [MCSE, MCTS, MVP]
[Heureux celui qui a pu pénétrer les causes secrètes des choses]
[Blog: http://www.marc-antho-etc.net/blog/]
"Jean-Claude BELLAMY" <Jean-Claude.Bellamy@wanadoo.fr> wrote in message
news:392CF6C2-A196-443B-9001-7BF71CDE0401@microsoft.com...
"MCI (ex do ré Mi chel la si do) [MVP]" <enleverlesO.OmcO@OmclaveauO.com>
a écrit dans le message de news:OzeH5lfjJHA.5732@TK2MSFTNGP05.phx.gbl...
Bonsoir !
J'ai l'immense, et grandiloquent, plaisir de vous annoncer WMISU.EXE
Il s'agit d'un (tout) petit utilitaire permettant de récupérer une
information de WMI, en invite de commande. Avec une utilisation facile
dans un Batch.
Très sympa tout çà, mon petit Michel, merci, mais .. euh ... excuse-moi de
te demander pardon, quand je le lance sans paramètre ou avec "/?" ,
j'obtiens cette injure :
Exception non gérée : System.Runtime.InteropServices.COMException
(0x80041021):
Exception de HRESULT : 0x80041021
à Microsoft.JScript.LateBinding.Call(Object[] arguments, Boolean
construct, Boolean brackets, VsaEngine engine)
à JScript 0.Global Code()
à JScript Main.Main(String[] )
Avoue que çà la fout mal, surtout un Vendredi 13 veille de la St Valentin
!!!! ;-)
(Ne cherche pas, çà n'a aucun rapport! ;-))
Mais heureusement, quand on est plus "conforme au bon goût", cela
fonctionne bien ! :-)
En exécutant :
wmisu Win32_AccountSID Element
j'ai bien obtenu la liste de tous les comptes et groupes de ma babasse
En exécutant :
wmisu Win32_AccountSID Setting
j'ai bien obtenu la liste de tous les SID
MAIS en exécutant :
wmisu Win32_AccountSID setting element (j'espérais bêtement un
panachage des 2 commandes précédentes, ce que je fais dans mon script
"name2sid.wsf"), je me suis goinfré une injure analogue à la précédente,
mais avec le code 0x80041017 cette fois-ci !
Exception non gérée : System.Runtime.InteropServices.COMException
(0x80041017):
Exception de HRESULT : 0x80041017
...
Bon, c'est tout, tu en fais ce que tu veux, moi ce que j'en dis, hein ,
...
En tout cas, il est bien pratique ton utilitaire !
Et faire tenir çà en 10 ko ...
Une taille aussi réduite, çà m'évoque une apprentie danseuse à l'Opéra de
Paris !
Ben oui, c'est un ... "p'tit rat, wmisu" !
OK, ..., je sors ! ;-)
--
May the Force be with You!
La Connaissance s'accroît quand on la partage
----------------------------------------------------------
Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org
J'imagine que si vous n'appréciez que modérément WMIC, PouvoirCoquille ne vous intéressera pas: gwmi -class Win32_AccountSID| Select setting,element
-- Marc [MCSE, MCTS, MVP] [Heureux celui qui a pu pénétrer les causes secrètes des choses] [Blog: http://www.marc-antho-etc.net/blog/]
"Jean-Claude BELLAMY" wrote in message news:
"MCI (ex do ré Mi chel la si do) [MVP]" a écrit dans le message de news:
Bonsoir !
J'ai l'immense, et grandiloquent, plaisir de vous annoncer WMISU.EXE Il s'agit d'un (tout) petit utilitaire permettant de récupérer une information de WMI, en invite de commande. Avec une utilisation facile dans un Batch.
Très sympa tout çà, mon petit Michel, merci, mais .. euh ... excuse-moi de te demander pardon, quand je le lance sans paramètre ou avec "/?" , j'obtiens cette injure :
Exception non gérée : System.Runtime.InteropServices.COMException (0x80041021): Exception de HRESULT : 0x80041021 à Microsoft.JScript.LateBinding.Call(Object[] arguments, Boolean construct, Boolean brackets, VsaEngine engine) à JScript 0.Global Code() à JScript Main.Main(String[] )
Avoue que çà la fout mal, surtout un Vendredi 13 veille de la St Valentin !!!! ;-) (Ne cherche pas, çà n'a aucun rapport! ;-))
Mais heureusement, quand on est plus "conforme au bon goût", cela fonctionne bien ! :-)
En exécutant : wmisu Win32_AccountSID Element j'ai bien obtenu la liste de tous les comptes et groupes de ma babasse
En exécutant : wmisu Win32_AccountSID Setting j'ai bien obtenu la liste de tous les SID
MAIS en exécutant : wmisu Win32_AccountSID setting element (j'espérais bêtement un panachage des 2 commandes précédentes, ce que je fais dans mon script "name2sid.wsf"), je me suis goinfré une injure analogue à la précédente, mais avec le code 0x80041017 cette fois-ci ! Exception non gérée : System.Runtime.InteropServices.COMException (0x80041017): Exception de HRESULT : 0x80041017 ...
Bon, c'est tout, tu en fais ce que tu veux, moi ce que j'en dis, hein , ... En tout cas, il est bien pratique ton utilitaire ! Et faire tenir çà en 10 ko ...
Une taille aussi réduite, çà m'évoque une apprentie danseuse à l'Opéra de Paris ! Ben oui, c'est un ... "p'tit rat, wmisu" !
OK, ..., je sors ! ;-)
-- May the Force be with You! La Connaissance s'accroît quand on la partage ---------------------------------------------------------- Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org
MCI \(ex do ré Mi chel la si do\) [MVP]
Re !
si vous n'appréciez que modérément WMIC
En fait, 9 fois sur 10, il s'agit juste de gérer une information. Et, après avoir galéré pour trouver la syntaxe WMIC, il faut encore jongler avec les FOR, TOKENS, FIND, pour extraire juste ce que l'on veut.
C'est pour cela que j'ai fait WMISU. Sachant que, pour les (rares) cas plus complexes, WMIC est toujours là.
PouvoirCoquille
Voilà un surnom bien trouvé. En fait, je n'arrive pas à accrocher avec PS. Certes, c'est un langage puissant, et relativement bien conçu. Mais : - Il est trop statique. Par exemple, on ne peut pas utiliser les objets COM dynamiques, chose immédiate avec VBscript ou JScript (même si j'ai trouvé un moyen, tordu, de le faire avec PS). - Il est assez difficile à utiliser depuis un autre langage/logiciel. Alors que les batchs ne posent aucun problème. - Il n'est pas utilisable pour créer des objets (serveurs) COM. Il n'est pas, non plus, utilisable comme langage ActiveScripting (comme VBScript, JScript, Python, etc. dans un HTA, par exemple). - Il n'est pas aussi facile que batch pour lancer des applications externes.
Finalement, PS est plus puissant que batch, moins qu'un vrai langage, mais beaucoup moins souple que Batch, VBScript, Python...
-- @-salutations -- Michel Claveau
Re !
si vous n'appréciez que modérément WMIC
En fait, 9 fois sur 10, il s'agit juste de gérer une information. Et,
après avoir galéré pour trouver la syntaxe WMIC, il faut encore jongler
avec les FOR, TOKENS, FIND, pour extraire juste ce que l'on veut.
C'est pour cela que j'ai fait WMISU. Sachant que, pour les (rares) cas
plus complexes, WMIC est toujours là.
PouvoirCoquille
Voilà un surnom bien trouvé.
En fait, je n'arrive pas à accrocher avec PS. Certes, c'est un langage
puissant, et relativement bien conçu. Mais :
- Il est trop statique. Par exemple, on ne peut pas utiliser les
objets COM dynamiques, chose immédiate avec VBscript ou JScript (même
si j'ai trouvé un moyen, tordu, de le faire avec PS).
- Il est assez difficile à utiliser depuis un autre langage/logiciel.
Alors que les batchs ne posent aucun problème.
- Il n'est pas utilisable pour créer des objets (serveurs) COM. Il
n'est pas, non plus, utilisable comme langage ActiveScripting (comme
VBScript, JScript, Python, etc. dans un HTA, par exemple).
- Il n'est pas aussi facile que batch pour lancer des applications
externes.
Finalement, PS est plus puissant que batch, moins qu'un vrai langage,
mais beaucoup moins souple que Batch, VBScript, Python...
En fait, 9 fois sur 10, il s'agit juste de gérer une information. Et, après avoir galéré pour trouver la syntaxe WMIC, il faut encore jongler avec les FOR, TOKENS, FIND, pour extraire juste ce que l'on veut.
C'est pour cela que j'ai fait WMISU. Sachant que, pour les (rares) cas plus complexes, WMIC est toujours là.
PouvoirCoquille
Voilà un surnom bien trouvé. En fait, je n'arrive pas à accrocher avec PS. Certes, c'est un langage puissant, et relativement bien conçu. Mais : - Il est trop statique. Par exemple, on ne peut pas utiliser les objets COM dynamiques, chose immédiate avec VBscript ou JScript (même si j'ai trouvé un moyen, tordu, de le faire avec PS). - Il est assez difficile à utiliser depuis un autre langage/logiciel. Alors que les batchs ne posent aucun problème. - Il n'est pas utilisable pour créer des objets (serveurs) COM. Il n'est pas, non plus, utilisable comme langage ActiveScripting (comme VBScript, JScript, Python, etc. dans un HTA, par exemple). - Il n'est pas aussi facile que batch pour lancer des applications externes.
Finalement, PS est plus puissant que batch, moins qu'un vrai langage, mais beaucoup moins souple que Batch, VBScript, Python...
-- @-salutations -- Michel Claveau
MCI \(ex do ré Mi chel la si do\) [MVP]
Bonsoir !
Tu as tout à fait raison, sur tous les points.
En effet : - Au départ, j'ai fait cet outil pour moi, uniquement pour récupérer facilement et rapidement des informations dans des batchs. Donc il n'y a ni message d'aide, ni contrôle des paramètres, ni gestion des erreurs (je n'en ai pas besoin). - Ce n'est qu'ensuite que je me suis dit que cela pourrait intéresser d'autres utilisateurs.
un ... "p'tit rat, wmisu"
Celle là, il fallait la trouver ! Et avant le repas et le floc, en plus...
@+ -- Michel Claveau
Bonsoir !
Tu as tout à fait raison, sur tous les points.
En effet :
- Au départ, j'ai fait cet outil pour moi, uniquement pour récupérer
facilement et rapidement des informations dans des batchs. Donc il n'y a
ni message d'aide, ni contrôle des paramètres, ni gestion des erreurs
(je n'en ai pas besoin).
- Ce n'est qu'ensuite que je me suis dit que cela pourrait intéresser
d'autres utilisateurs.
un ... "p'tit rat, wmisu"
Celle là, il fallait la trouver ! Et avant le repas et le floc, en
plus...
En effet : - Au départ, j'ai fait cet outil pour moi, uniquement pour récupérer facilement et rapidement des informations dans des batchs. Donc il n'y a ni message d'aide, ni contrôle des paramètres, ni gestion des erreurs (je n'en ai pas besoin). - Ce n'est qu'ensuite que je me suis dit que cela pourrait intéresser d'autres utilisateurs.
un ... "p'tit rat, wmisu"
Celle là, il fallait la trouver ! Et avant le repas et le floc, en plus...
@+ -- Michel Claveau
Lognoul Marc [MVP]
Salut,
En fait, 9 fois sur 10, il s'agit juste de gérer une information. Et, après avoir galéré pour trouver la syntaxe WMIC, il faut encore jongler avec les FOR, TOKENS, FIND, pour extraire juste ce que l'on veut.
C'est pour cela que j'ai fait WMISU. Sachant que, pour les (rares) cas plus complexes, WMIC est toujours là.
Oui, c'est exact, WMI reste un EXE à intégrer la plupart du temps dans du batch. Mais malgré sa complexité de premier abord, il est en fait très simple à l'usage.
En fait, je n'arrive pas à accrocher avec PS. Certes, c'est un langage puissant, et relativement bien conçu. Mais : - Il est trop statique. Par exemple, on ne peut pas utiliser les objets COM dynamiques, chose immédiate avec VBscript ou JScript (même si j'ai trouvé un moyen, tordu, de le faire avec PS).
Tu aurais qq exemples? il y a peu de choses impossibles en .Net au niveau de l'interopérabilité avec COM
- Il est assez difficile à utiliser depuis un autre langage/logiciel.
Tu veux dire à lancer via une ligne de commande? tout le monde disait ça de WSH au début aussi. Je trouve Posh à la limite plus facile, surtout que l'on peut éxécuter une commande unique à partir d'un batch, chose impossible en WSH
Alors que les batchs ne posent aucun problème. - Il n'est pas utilisable pour créer des objets (serveurs) COM. Il n'est pas, non plus, utilisable comme langage ActiveScripting (comme VBScript, JScript, Python, etc. dans un HTA, par exemple).
Par contre, c'est vrai que cela serait simpa d'avoir un interpreteur Posh dans IE, pour les HTA et les gadgets ;)
- Il n'est pas aussi facile que batch pour lancer des applications externes.
Là encore une fois, c'est une affaire d'habitude, que de galères au début avec WSH...
As tu déjà joué avec ça? http://powershelltoys.com/
-- Marc [MCSE, MCTS, MVP] [Heureux celui qui a pu pénétrer les causes secrètes des choses] [Blog: http://www.marc-antho-etc.net/blog/]
Salut,
En fait, 9 fois sur 10, il s'agit juste de gérer une information. Et,
après avoir galéré pour trouver la syntaxe WMIC, il faut encore jongler
avec les FOR, TOKENS, FIND, pour extraire juste ce que l'on veut.
C'est pour cela que j'ai fait WMISU. Sachant que, pour les (rares) cas
plus complexes, WMIC est toujours là.
Oui, c'est exact, WMI reste un EXE à intégrer la plupart du temps dans du
batch. Mais malgré sa complexité de premier abord, il est en fait très
simple à l'usage.
En fait, je n'arrive pas à accrocher avec PS. Certes, c'est un langage
puissant, et relativement bien conçu. Mais :
- Il est trop statique. Par exemple, on ne peut pas utiliser les objets
COM dynamiques, chose immédiate avec VBscript ou JScript (même si j'ai
trouvé un moyen, tordu, de le faire avec PS).
Tu aurais qq exemples? il y a peu de choses impossibles en .Net au niveau de
l'interopérabilité avec COM
- Il est assez difficile à utiliser depuis un autre langage/logiciel.
Tu veux dire à lancer via une ligne de commande? tout le monde disait ça de
WSH au début aussi. Je trouve Posh à la limite plus facile, surtout que l'on
peut éxécuter une commande unique à partir d'un batch, chose impossible en
WSH
Alors que les batchs ne posent aucun problème.
- Il n'est pas utilisable pour créer des objets (serveurs) COM. Il n'est
pas, non plus, utilisable comme langage ActiveScripting (comme VBScript,
JScript, Python, etc. dans un HTA, par exemple).
Par contre, c'est vrai que cela serait simpa d'avoir un interpreteur Posh
dans IE, pour les HTA et les gadgets ;)
- Il n'est pas aussi facile que batch pour lancer des applications
externes.
Là encore une fois, c'est une affaire d'habitude, que de galères au début
avec WSH...
As tu déjà joué avec ça? http://powershelltoys.com/
--
Marc [MCSE, MCTS, MVP]
[Heureux celui qui a pu pénétrer les causes secrètes des choses]
[Blog: http://www.marc-antho-etc.net/blog/]
En fait, 9 fois sur 10, il s'agit juste de gérer une information. Et, après avoir galéré pour trouver la syntaxe WMIC, il faut encore jongler avec les FOR, TOKENS, FIND, pour extraire juste ce que l'on veut.
C'est pour cela que j'ai fait WMISU. Sachant que, pour les (rares) cas plus complexes, WMIC est toujours là.
Oui, c'est exact, WMI reste un EXE à intégrer la plupart du temps dans du batch. Mais malgré sa complexité de premier abord, il est en fait très simple à l'usage.
En fait, je n'arrive pas à accrocher avec PS. Certes, c'est un langage puissant, et relativement bien conçu. Mais : - Il est trop statique. Par exemple, on ne peut pas utiliser les objets COM dynamiques, chose immédiate avec VBscript ou JScript (même si j'ai trouvé un moyen, tordu, de le faire avec PS).
Tu aurais qq exemples? il y a peu de choses impossibles en .Net au niveau de l'interopérabilité avec COM
- Il est assez difficile à utiliser depuis un autre langage/logiciel.
Tu veux dire à lancer via une ligne de commande? tout le monde disait ça de WSH au début aussi. Je trouve Posh à la limite plus facile, surtout que l'on peut éxécuter une commande unique à partir d'un batch, chose impossible en WSH
Alors que les batchs ne posent aucun problème. - Il n'est pas utilisable pour créer des objets (serveurs) COM. Il n'est pas, non plus, utilisable comme langage ActiveScripting (comme VBScript, JScript, Python, etc. dans un HTA, par exemple).
Par contre, c'est vrai que cela serait simpa d'avoir un interpreteur Posh dans IE, pour les HTA et les gadgets ;)
- Il n'est pas aussi facile que batch pour lancer des applications externes.
Là encore une fois, c'est une affaire d'habitude, que de galères au début avec WSH...
As tu déjà joué avec ça? http://powershelltoys.com/
-- Marc [MCSE, MCTS, MVP] [Heureux celui qui a pu pénétrer les causes secrètes des choses] [Blog: http://www.marc-antho-etc.net/blog/]
MCI \(ex do ré Mi chel la si do\) [MVP]
Bonsoir !
on ne peut pas utiliser les objets COM dynamiques,
Tu aurais qq exemples ? il y a peu de choses impossibles en .Net au niveau de l'interopérabilité avec COM
Ponx, qui le principal outil que j'ai développé ces dernières années. http://ponx.org/ponx (le site n'est pas à jour, sauf l'installation en ligne qui fonctionne bien).
En fait, PowerShell utilise les TLB (TypeLiBrary) qui décrivent les fonctions (publiques) de certains serveurs COM. Or, les serveur COM dynamiques ne peuvent avoir de TLB, car les fonctions peuvent être (re-) définies durant l'exécution. Dans ces cas là, en C#, on utilise le "Late-Binding". Mais cette techno n'existe pas pour PS. La solution que j'ai trouvée, c'est de piloter ScriptControl depuis PS, qui va programmer l'accès à l'objet cOM dynamique en VBScript ou JScript.
Il est assez difficile à utiliser depuis un autre langage/logiciel.
Tu veux dire à lancer via une ligne de commande ?
En fait, dans certains logiciels, je "enveloppe" (wrappe) des batchs, des commandes, des logiciels console. En récupérant les résultats sur STDOUT, et, dans certains cas, en envoyant la suite sur STDIN. Le peu d'essais que j'ai tentés avec PS n'a pas abouti. Juste un exemple pour le fun : j'ai remarqué que, avec beaucoup de langage, il était plus rapide de récupérer le résultat d'un DIR *.JPG /B /S que de faire la même choses nativement avec le langage.
Par contre, c'est vrai que cela serait simpa d'avoir un interpreteur Posh dans IE, pour les HTA et les gadgets ;)
Pour les gagdets, il existe un truc, payant (gratuit pour les PVP), Power-Gadget. Pour HTA et IE, il y a une technologie toute prête, chez MS : Active-Scripting. Mais, je soupçonne Microsoft de vouloir la laisser tomber. Car ça fait plusieurs années qu'il n'y a pas eu d'évolutions (autres que des restrictions).
As tu déjà joué avec ça? http://powershelltoys.com/
Non. Pas essayé. Et, j'ai tellement de choses en cours, que je ne suis pas près de m'y intéresser...
@-salutations -- Michel Claveau
Bonsoir !
on ne peut pas utiliser les objets COM dynamiques,
Tu aurais qq exemples ? il y a peu de choses impossibles en .Net au
niveau de l'interopérabilité avec COM
Ponx, qui le principal outil que j'ai développé ces dernières années.
http://ponx.org/ponx (le site n'est pas à jour, sauf l'installation en
ligne qui fonctionne bien).
En fait, PowerShell utilise les TLB (TypeLiBrary) qui décrivent les
fonctions (publiques) de certains serveurs COM. Or, les serveur COM
dynamiques ne peuvent avoir de TLB, car les fonctions peuvent être (re-)
définies durant l'exécution.
Dans ces cas là, en C#, on utilise le "Late-Binding". Mais cette techno
n'existe pas pour PS.
La solution que j'ai trouvée, c'est de piloter ScriptControl depuis PS,
qui va programmer l'accès à l'objet cOM dynamique en VBScript ou
JScript.
Il est assez difficile à utiliser depuis un autre langage/logiciel.
Tu veux dire à lancer via une ligne de commande ?
En fait, dans certains logiciels, je "enveloppe" (wrappe) des batchs,
des commandes, des logiciels console. En récupérant les résultats sur
STDOUT, et, dans certains cas, en envoyant la suite sur STDIN.
Le peu d'essais que j'ai tentés avec PS n'a pas abouti.
Juste un exemple pour le fun : j'ai remarqué que, avec beaucoup de
langage, il était plus rapide de récupérer le résultat d'un DIR *.JPG
/B /S que de faire la même choses nativement avec le langage.
Par contre, c'est vrai que cela serait simpa d'avoir un interpreteur
Posh dans IE, pour les HTA et les gadgets ;)
Pour les gagdets, il existe un truc, payant (gratuit pour les PVP),
Power-Gadget.
Pour HTA et IE, il y a une technologie toute prête, chez MS :
Active-Scripting. Mais, je soupçonne Microsoft de vouloir la laisser
tomber. Car ça fait plusieurs années qu'il n'y a pas eu d'évolutions
(autres que des restrictions).
As tu déjà joué avec ça? http://powershelltoys.com/
Non. Pas essayé. Et, j'ai tellement de choses en cours, que je ne suis
pas près de m'y intéresser...
on ne peut pas utiliser les objets COM dynamiques,
Tu aurais qq exemples ? il y a peu de choses impossibles en .Net au niveau de l'interopérabilité avec COM
Ponx, qui le principal outil que j'ai développé ces dernières années. http://ponx.org/ponx (le site n'est pas à jour, sauf l'installation en ligne qui fonctionne bien).
En fait, PowerShell utilise les TLB (TypeLiBrary) qui décrivent les fonctions (publiques) de certains serveurs COM. Or, les serveur COM dynamiques ne peuvent avoir de TLB, car les fonctions peuvent être (re-) définies durant l'exécution. Dans ces cas là, en C#, on utilise le "Late-Binding". Mais cette techno n'existe pas pour PS. La solution que j'ai trouvée, c'est de piloter ScriptControl depuis PS, qui va programmer l'accès à l'objet cOM dynamique en VBScript ou JScript.
Il est assez difficile à utiliser depuis un autre langage/logiciel.
Tu veux dire à lancer via une ligne de commande ?
En fait, dans certains logiciels, je "enveloppe" (wrappe) des batchs, des commandes, des logiciels console. En récupérant les résultats sur STDOUT, et, dans certains cas, en envoyant la suite sur STDIN. Le peu d'essais que j'ai tentés avec PS n'a pas abouti. Juste un exemple pour le fun : j'ai remarqué que, avec beaucoup de langage, il était plus rapide de récupérer le résultat d'un DIR *.JPG /B /S que de faire la même choses nativement avec le langage.
Par contre, c'est vrai que cela serait simpa d'avoir un interpreteur Posh dans IE, pour les HTA et les gadgets ;)
Pour les gagdets, il existe un truc, payant (gratuit pour les PVP), Power-Gadget. Pour HTA et IE, il y a une technologie toute prête, chez MS : Active-Scripting. Mais, je soupçonne Microsoft de vouloir la laisser tomber. Car ça fait plusieurs années qu'il n'y a pas eu d'évolutions (autres que des restrictions).
As tu déjà joué avec ça? http://powershelltoys.com/
Non. Pas essayé. Et, j'ai tellement de choses en cours, que je ne suis pas près de m'y intéresser...
@-salutations -- Michel Claveau
MCI \(ex do ré Mi chel la si do\) [MVP]
Bonsoir !
Juste pour préciser que Gilles Laurent vient de sortir un utilitaire qui fait la même chose que wmisu, mais en mieux. Les coordonnées : GetWMIProperty : http://glsft.free.fr/index.php?option=com_content&task=view&idp&Itemid( Claveau
Bonsoir !
Juste pour préciser que Gilles Laurent vient de sortir un utilitaire qui
fait la même chose que wmisu, mais en mieux.
Les coordonnées :
GetWMIProperty :
http://glsft.free.fr/index.php?option=com_content&task=view&idp&Itemid(--@-salutations--Michel Claveau
Juste pour préciser que Gilles Laurent vient de sortir un utilitaire qui fait la même chose que wmisu, mais en mieux. Les coordonnées : GetWMIProperty : http://glsft.free.fr/index.php?option=com_content&task=view&idp&Itemid( Claveau