N
Nicholas Calvert
Hi guys,
First off, hello New to the community, looks very helpful and active
indeed...
As i say, I am new to Ruby and am trying to port some WMI Powershell
code over – I am not having much luck... My goal is to automate Hyper-V
on Windows 2008, as an example at a very simple level in powershell I
can do:
## Define variable for getting VSMS class
$VSMS = get-wmiobject MSVM_VirtualSystemManagementService -namespace
"root\virtualization"
## Then call a method on that class like this. Definevirtualsystem is
the method in question, I call it with no parameters.
$VSMS.definevirtualsystem()
I have tried two libarys in Ruby, win32ole and ruby-wmi. The synatx for
ruby-wmi confused me the most, so can only post a (kind of) working
example with win32ole:
require 'win32ole'
wmi =
WIN32OLE.connect("winmgmts:\\\\localhost\\root\\virtualization:Msvm_VirtualSystemManagementService")
wmi.ExecMethod(DefineVirtualSystem())
... this gives me the following error:
test.rb:4: undefined method `DefineVirtualSystem' for main:Object
(NoMethodError)
Also one of the tricks with WMI is to get the XML output of a class,
change the settings and squirt it back.
Using the previous example, i could do:
$VSMS.psbase.gettext(1)
...to give myself the raw XML. Is there an easy way to do this in Ruby?
Any pointers would be greatly appreciated.
Cheers,
Nick
First off, hello New to the community, looks very helpful and active
indeed...
As i say, I am new to Ruby and am trying to port some WMI Powershell
code over – I am not having much luck... My goal is to automate Hyper-V
on Windows 2008, as an example at a very simple level in powershell I
can do:
## Define variable for getting VSMS class
$VSMS = get-wmiobject MSVM_VirtualSystemManagementService -namespace
"root\virtualization"
## Then call a method on that class like this. Definevirtualsystem is
the method in question, I call it with no parameters.
$VSMS.definevirtualsystem()
I have tried two libarys in Ruby, win32ole and ruby-wmi. The synatx for
ruby-wmi confused me the most, so can only post a (kind of) working
example with win32ole:
require 'win32ole'
wmi =
WIN32OLE.connect("winmgmts:\\\\localhost\\root\\virtualization:Msvm_VirtualSystemManagementService")
wmi.ExecMethod(DefineVirtualSystem())
... this gives me the following error:
test.rb:4: undefined method `DefineVirtualSystem' for main:Object
(NoMethodError)
Also one of the tricks with WMI is to get the XML output of a class,
change the settings and squirt it back.
Using the previous example, i could do:
$VSMS.psbase.gettext(1)
...to give myself the raw XML. Is there an easy way to do this in Ruby?
Any pointers would be greatly appreciated.
Cheers,
Nick