[#40890] windowsでコンテキストメニューの「印刷」を実行するには? — 岩崎 弘孝 <IH000667@...>
岩崎と申します。
7 messages
2005/07/01
[#40891] 配列をシャッフル — Hideo Konami <konami@...>
小波です。
25 messages
2005/07/01
[#40892] Re: 配列をシャッフル
— Hiroyuki Adachi <hiroyuki-a@...>
2005/07/01
array = [1, 2, 3, 4, 5]
[#40899] Re: 配列をシャッフル
— ktokita <ktokita-p@...>
2005/07/01
時田です
[#40904] slice の仕様とマニュアルの記述 — Hideo Konami <konami@...>
小波です。
6 messages
2005/07/02
[#40939] 値の集合内の中から値の大きな数個のみを取得するには? — 岩崎 弘孝 <IH000667@...>
岩崎と申します。
5 messages
2005/07/27
[#40941] オブジェクト配列の単一化は? — 小西 弘将 <konishi@...>
小西です。いつもお世話になります。
6 messages
2005/07/27
[#40955] irb --noreadline — Masatoshi SEKI <m_seki@...>
咳といいます。
10 messages
2005/07/29
[#40966] Solaris9上のREXML — Hirotaka Mizutani <hirotaka@...>
初めて投稿させて頂きます。水谷と申します。
6 messages
2005/07/29
[ruby-list:40924] Re: windowsでコンテキストメニューの「印刷」を実行するには?
From:
MIYAMUKO Katsuyuki <miyamuko@...>
Date:
2005-07-11 11:25:11 UTC
List:
ruby-list #40924
みやむこです。
岩崎 弘孝 wrote:
> 今回、windowsでコンテキストメニュー(マウス右ボタンのメニュー)の「印刷」
> を実行したく
> 以下のコードを作成しましたが、デフォルトの動作である「開く(&O)」に相当す
> る
> 動作しかしないようです。解決策のご助言をお願いします。
(もう解決しているかもしれませんが) InvokeVerb を使わずに Verbs の中から
自分で探して、doIt してあげるとできるみたいです。
#!ruby -Ks
require 'win32ole'
class WIN32OLE
include Enumerable
end
parent, name = File.split(File.expand_path(ARGV.shift))
parent.gsub!("/", "\\")
shell = WIN32OLE.new('Shell.Application')
verbs = shell.NameSpace(parent).ParseName(name).Verbs
#puts verbs.map {|v| v.Name }
if v = verbs.find {|v| v.Name == "印刷(&P)" }
v.doIt
sleep(2) # 起動が遅い場合 (excel とか)、少し待ってあげないとだめ。
else
puts "印刷できません"
end