Hi All,
I want to access the windows functionalities such as Shut down, Restart,
Log off etc..
Please guide to me..
Because i tried win32OLE, Watir and few gems.. But still there is no
improvement to access those things.
Awaiting reply.
Regards,
P.Raveendran
RailsFactory,Chennai.
···
--
Posted via http://www.ruby-forum.com/.
Raveendran Jazzez wrote:
Hi All,
I want to access the windows functionalities such as Shut down, Restart,
Log off etc..
Please guide to me..
Because i tried win32OLE, Watir and few gems.. But still there is no
improvement to access those things.
Awaiting reply.
Regards,
P.Raveendran
RailsFactory,Chennai.
http://raveendran.wordpress.com
One method is to run the command "shutdown.exe" with parameters:
system('shutdown.exe -r -f -t 0')
To get a list of parameters, open a console window and enter
shutdown.exe /?
David
···
--
Posted via http://www.ruby-forum.com/\.
Here are a few ways. You'll need admin privileges on any box you run
it against.
Using WMI via win32ole locally.
<code>
LogOff = 0
ForcedLogOff = 4
Shutdown = 1
ForcedShutdown = 5
Reboot = 2
ForcedReboot = 6
PowerOff = 8
ForcedPowerOff = 12
require 'win32ole'
wmi = WIN32OLE.connect("winmgmts:\\\\.\\root\\cimv2")
list = wmi.execquery("Select * from Win32_OperatingSystem",nil,48)
list.each do |item|
item.win32Shutdown(LogOff)
end
</code>
Using ruby-wmi (gem install ruby-wmi) locally.
<code>
require 'ruby-wmi'
#you'll need the same constants as above
host = 'computername'
os = WMI::Win32_OperatingSystem.find(:first)
os.win32shutdown(LogOff )
</code>
Using win32ole remotely.
<code>
require 'win32ole'
# constants
computer_name = 'host'
wmi = WIN32OLE.connect("winmgmts:\\\\#{computer_name}\\root\\cimv2")
list = wmi.execquery("Select * from Win32_OperatingSystem",nil,48)
list.each do |item|
item.win32Shutdown(LogOff )
end
</code>
Using ruby-wmi remotely.
<code>
require 'ruby-wmi'
# constants
host = 'computername'
os = WMI::Win32_OperatingSystem.find(:first, :host => host)
os.win32shutdown(LogOff )
</code>
Gordon
···
On Mon, Apr 21, 2008 at 1:25 AM, Raveendran Perumalsamy <jazzezravi@gmail.com> wrote:
Hi All,
I want to access the windows functionalities such as Shut down, Restart,
Log off etc..
Please guide to me..
Because i tried win32OLE, Watir and few gems.. But still there is no
improvement to access those things.
Awaiting reply.
Regards,
P.Raveendran
RailsFactory,Chennai.
http://raveendran.wordpress.com
--
Posted via http://www.ruby-forum.com/\.
Thank for David and Gardon.
Hi Gardon,
Very good code from u. But i have some trouble when i change LogOff to
Shutdown. I herewith attached the file shows my problem to u.
Awaiting your reply
Regards,
P.Raveendran
RailsFactory,Chennai.
http://raveendran.wordpress.com
Attachments:
http://www.ruby-forum.com/attachment/1766/shutdown.JPG
···
--
Posted via http://www.ruby-forum.com/.
Ok, you'll need the 'Shutdown' privilege for a local machine and the
RemoteShutdown privilege for a remote machine.
LogOff = 0
ForcedLogOff = 4
Shutdown = 1
ForcedShutdown = 5
Reboot = 2
ForcedReboot = 6
PowerOff = 8
ForcedPowerOff = 12
require 'rubygems'
require 'ruby-wmi'
os = WMI::Win32_OperatingSystem.find( :first, :privileges =>
[WMI::Privilege::Shutdown] )
os.win32shutdown( Shutdown )
Some links:
http://ruby-wmi.rubyforge.org/doc/classes/WMI/Privilege.html
hope that helps,
Gordon
···
On Mon, Apr 21, 2008 at 11:57 PM, Raveendran Jazzez <jazzezravi@gmail.com> wrote:
Thank for David and Gardon.
Hi Gardon,
Very good code from u. But i have some trouble when i change LogOff to
Shutdown. I herewith attached the file shows my problem to u.
Hi All,
I got simple solution. But need t sharp it.
I got code to shutdown my machine, getting ipconfig in my machine
etc..,(whatever possible to get via command prompt.)
My Code:
system('ipconfig')
I got my IP Address.
Problem:
a= system('ipconfig')
puts a
I got only true. Please help to store the content in single variable.
Regards,
P.Raveendran
RailsFactory,Chennai.
http://raveendran.wordpress.com
···
--
Posted via http://www.ruby-forum.com/.
L_G
(L. G.)
7
Raveendran Jazzez wrote:
My Code:
system('ipconfig')
I got my IP Address.
Problem:
a= system('ipconfig')
puts a
I got only true. Please help to store the content in single variable.
Hi..
I tried your code and all OK!
Try this:
def myIpConfig
system('ipconfig') // or puts system('ipconfig')
end
myIpConfig // print your ip config
···
--
Posted via http://www.ruby-forum.com/\.
Hi,
Raveendran Jazzez wrote:
Hi All,
I got simple solution. But need t sharp it.
I got code to shutdown my machine, getting ipconfig in my machine
etc..,(whatever possible to get via command prompt.)
My Code:
system('ipconfig')
I got my IP Address.
Problem:
a= system('ipconfig')
puts a
I got only true. Please help to store the content in single variable.
Try with backtick operator:
a = `ipconfig`
If you want only IP Address, you can do something like this:
a = `ipconfig`.scan(/IP Address.+?: (.+)\r/).to_s
Regards,
Park Heesob
···
--
Posted via http://www.ruby-forum.com/\.
Hi..
I tried your code and all OK!
Try this:
def myIpConfig
system('ipconfig') // or puts system('ipconfig')
end
myIpConfig // print your ip config
Hi Luka,
i did this already. But need to get in a single variable. I think it is
not possible. Anyway thanks a lot ..
Regards,
P.Raveendran
RailsFactory,Chennai.
http://raveendran.wordpress.com
···
--
Posted via http://www.ruby-forum.com/\.
Try with backtick operator:
a = `ipconfig`
If you want only IP Address, you can do something like this:
a = `ipconfig`.scan(/IP Address.+?: (.+)\r/).to_s
Regards,
Park Heesob
Hi Park,
Fantastic idea from u. Thank a lot.
Hi All,
We will continue with more problems very soon.....
Regards,
P.Raveendran
RailsFactory,Chennai.
http://raveendran.wordpress.com
···
--
Posted via http://www.ruby-forum.com/\.
i did this already. But need to get in a single variable. I think it is
not possible. Anyway thanks a lot ..
Use backticks:
a = `ipconfig`
=> "\r\nWindows IP Configuration\r\n\r\n\r\nEthernet adapter Wireless
Network Connection 2:\r\n\r\n Connection-specific DNS Suffix .
: \r\n IP Address. . . . . . . . . . . . : 192.168.1.101\r\n
Subnet Mask . . . . . .
. . . . . : 255.255.255.0\r\n Default Gateway . . . . . . . . .
: 192.168.1.1\r\n"
a
=> "\r\nWindows IP Configuration\r\n\r\n\r\nEthernet adapter Wireless
Network Connection 2:\r\n\r\n Connection-specific DNS Suffix .
: \r\n IP Address. . . . . . . . . . . . : 192.168.1.101\r\n
Subnet Mask . . . . . .
. . . . . : 255.255.255.0\r\n Default Gateway . . . . . . . . .
: 192.168.1.1\r\n"
···
On Sat, May 3, 2008 at 7:02 AM, Raveendran Jazzez <jazzezravi@gmail.com> wrote:
L_G
(L. G.)
13
Raveendran Jazzez wrote:
Hi Luka,
i did this already. But need to get in a single variable. I think it is
not possible. Anyway thanks a lot ..
Regards,
P.Raveendran
RailsFactory,Chennai.
http://raveendran.wordpress.com
No no, it's possible, i tried:
var = system('ipconfig')
puts var
and all is fine.
try this:
var = "#{system('ipconfig')}"
puts "#{var}"
I think it must work.
···
--
Posted via http://www.ruby-forum.com/\.
Hi All,
Previously i am used 'ipconfig' --> It should be `ipconfig`
So All are eager to fix more issues from me.. k let us see
Regards,
P.Raveendran
RailsFactory,Chennai.
http://raveendran.wordpress.com
···
--
Posted via http://www.ruby-forum.com/.