-
Published on :
30
September
10
-
by :
Benedikt Althaus
-
in :
Powershell, System Center
-
Comments :
Comments Off
When implementing a new management pack for SCOM 2007 R2, most of the time I try to use Powershell instead of VBScript.
For the development I normally use notepad++, but since this wasn’t installed at customers’ I tried using the ISE.
After an hour of troubleshooting, I switched to the console host of Powershell, and the script was working as suspected.
The code that confused myself are only a few lines:
$api = new-object -comObject 'MOM.ScriptAPI'
$bag = $api.CreatePropertyBag()
$bag.AddValue("test","123")
$api.return($bag)
Running the code in the ISE returns: NOTHING
Running it in the normal console host, retruns the xml structure of the SCOM property bag as suspected.
So, using notepad++ and the consolehost for deployment of managment pack scripts is my recommended way at the moment…
-
Published on :
28
September
10
-
by :
Benedikt Althaus
-
in :
Fun, Powershell
-
Comments :
Comments Off
The powershell has a really nice implementation of a dictionary. It is called Hashtable and can be used to store pairs of keys and values.
Compared with the dictionary used in vbscript, it is really simple to use,
and I have used it several times befor. Till last friday:
There is a method called ‘Add’, really!
And running a get-member agains a hashtable shows at the first entry:
Name MemberType Definition
—- ———- ———-
Add Method System.Void Add(System.Object key, System.Object value)
So where the hell does this error come from.
I decided to make a set-psdebug -step in the powershell ISE.
Have a look what I’ve found:
Yes, you can trust your eyes, there is an acute accent on top of the A
Add -> Ádd
Ok, so where are my glasses:
As you can see, using the ISE with a Font Size of 12
and a sceen resolution of 1920 x 1200
makes it hard to see everything clear.
And I’m really glad, that this wasn’t a real bug to my favorite object hashtable.