1 名前:邪神名無し君 mailto:sage [2009/05/12(火) 22:49:40 ] VBScriptについて必死に話し合ってください VBS以外はスルーの方向で(・∀・) ※質問スレではありません、質問は最低限し抑えましょう※
2 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 23:19:26 ] なんでぇぇぇぇぇぇぇぇぇぇぇっ いまさらぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁっ!! ぶぃっ・う゛ぃーっ・すくりぷとぉぉぉぉぉぉぉぉっ なんでっすかーーーーーーーーーーぁぁぁぁぁぁあああああああああああ ぱわあああああああああぁぁぁぁぁぁぁっっぉああああああああああっ しぇるぅじゃなくてぇぇぇぇぇぇぇぇぇぇぇーーーーっ!! みたいな感じでよろしいでしょうか。
3 名前:デフォルトの名無しさん mailto:sage [2009/05/12(火) 23:43:51 ] このスレッドは天才チンパンジー「アイちゃん」が 言語訓練のために立てたものです。 アイと研究員とのやり取りに利用するスレッドなので、 関係者以外は書きこまないで下さい。 京都大学霊長類研究所
4 名前:デフォルトの名無しさん mailto:sage [2009/05/13(水) 02:53:29 ] >>3 お前らゴールデンウィークの間なにしてたんだよ。 休んでもいいけど、アイちゃんのコンソールをそのままにして行くなよ。
5 名前:デフォルトの名無しさん [2009/05/18(月) 10:38:03 ] VBScriptのよさを全世界に広げるためには まずIE以外のブラウザで使えるようにすべきだと思うんだ。 VBScriptはJavaScriptのように変数や命令を大文字小文字を分けて書く必要もなく、 エラーが出てもOn Error Resume Nextで全部エラーを無視してくれる。 こんなすばらしい言語なのになぜIE以外で使われないのか理解できない!!
6 名前:デフォルトの名無しさん [2009/05/18(月) 22:22:23 ] だってお手軽なIDEがないもん VBSEditってのがあるけど、それなりな金額がかかるし(お金を払う価値はあると思うけど) あと、導入に適した本がなかなか見当たらない。 いままで見てきた本で一番役に立ったのは WSHクイックリファレンス ttp://www.oreilly.co.jp/books/4873113091/ これかなぁ IEはシラネ
7 名前:デフォルトの名無しさん [2009/05/25(月) 08:56:39 ] msscrdbg.exe というのがあったがまともに動かない。 そもそもデバッグ開始ができない。
8 名前:デフォルトの名無しさん mailto:sage [2009/05/25(月) 20:43:34 ] 悪用法しか思いつかない
9 名前:デフォルトの名無しさん [2009/05/31(日) 08:48:58 ] そこでPowerShellですよ
10 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 00:46:21 ] VBSで、ブートローダの設定を切り換えるって可能? 例えば、XPとVistaをデュアルブートしてたらXPを無効にしたり。
11 名前:デフォルトの名無しさん [2009/06/08(月) 18:42:35 ] ふつうのVBとVBSってどのような特徴があるのですか? 全くの初心者ですが、今からプログラムを始めるならばどちらが適していますか?
12 名前:デフォルトの名無しさん mailto:sage [2009/06/08(月) 18:55:46 ] 両方とも適してない
13 名前:デフォルトの名無しさん mailto:sage [2009/06/08(月) 18:59:27 ] 言語には用途ってもんがある。 プログラムで何がしたいんだ?そこが重要だ。 回答によってはVBもVBSも候補になりうる。
14 名前:デフォルトの名無しさん mailto:sage [2009/06/12(金) 20:14:14 ] >>10 Vista側でVBSからbcdeditコマンドを叩く technet.microsoft.com/en-us/library/cc731662 (WS.10).aspx
15 名前:デフォルトの名無しさん mailto:sage [2009/06/12(金) 21:27:13 ] サーバーサイドvbscriptで開発してるが、 ・クラス機能がしょぼ過ぎる ・try catchを実現するために、関数を1つかまさなきゃらないのは面倒過ぎ ・ショートサーキット評価のないif文(おかげでネストが深くなる) ・Null引数で落ちる組み込み関数多過ぎ ・Set 〜 = New のせいでオブジェクト型/その他を混在で返す関数が作れない くらい最悪
16 名前:デフォルトの名無しさん mailto:sage [2009/06/13(土) 14:02:24 ] なんでサーバーサイドの開発で VBScript を選んだの?
17 名前:デフォルトの名無しさん mailto:sage [2009/06/13(土) 14:29:32 ] それを聞くのはヤボだろ。既存のシステムの維持拡張させられてるって可能性もあるわけだし。 え?新規?死んでください。
18 名前:デフォルトの名無しさん [2009/06/22(月) 23:09:01 ] vbscript って、visual studio でプログラムを書けないの? サクラエディタとか秀丸とか必要なの?
19 名前:デフォルトの名無しさん [2009/06/23(火) 01:11:04 ] エディタありゃ書けるよ。つまりVisualStudioでももちろん書ける。
20 名前:デフォルトの名無しさん [2009/06/23(火) 04:38:22 ] >>19 ありがとう。vbscriptの拡張子はなんにすればいいですか?
21 名前:デフォルトの名無しさん mailto:sage [2009/06/23(火) 19:25:10 ] *.vbs だよ、なんでググれないの?
22 名前:デフォルトの名無しさん [2009/06/23(火) 20:00:29 ] >>21 バカでごめんよ。
23 名前:デフォルトの名無しさん mailto:sage [2009/06/24(水) 00:17:54 ] まぁ、どうせ糞スレなんだ どんな書き込みだって許せる板さ(´_ゝ`)
24 名前:デフォルトの名無しさん [2009/09/03(木) 23:28:32 ] 最近使い始めたけど、面白いね 文字列を実行コードに出来るんて新鮮だった これ使えばテンプレートみたいな事出来そう カオスになりそうではあるがw
25 名前:デフォルトの名無しさん [2009/09/09(水) 23:33:34 ] 文字列を返す関数の戻り値を変数の参照にする方法はありますか?
26 名前:デフォルトの名無しさん mailto:sage [2009/09/10(木) 00:07:08 ] www.google.com/search?hl=ja&safe=off&num=50&q=%22%E5%A4%89%E6%95%B0%E3%81%AE%E5%8F%82%E7%85%A7%E3%81%AB%E3%81%99%E3%82%8B%22&btnG=%E6%A4%9C%E7%B4%A2&lr=lang_ja
27 名前:デフォルトの名無しさん mailto:sage [2009/09/13(日) 03:19:24 ] VBScriptプログラムを学習するのに、個人的にこの本は良かった。 VBScriptハッカーズ・プログラミング www.amazon.co.jp/dp/4896272838 ただamazonの評価にあるように、これは学習用の教科書として使う。 サンプルをとにかく試したいならサンプル集を探した方が良い。 っていうかサンプル集は本を買うよりググった方が良いと思う。
28 名前:デフォルトの名無しさん mailto:sage [2009/09/13(日) 21:39:15 ] VBScript は徐々に消えつつあるけど、PowerShell は普及してるんかね
29 名前:デフォルトの名無しさん mailto:sage [2009/09/13(日) 22:40:55 ] なんのかんの言ってもVBScriptが現在の標準だろ 少なくともWindows 2008でも標準インストールされないPowerShellを普及してるなどとはとても言えない
30 名前:デフォルトの名無しさん mailto:sage [2009/09/21(月) 08:39:27 ] >>27 俺もその本で入った。 サンプル見ながら色々できるし、最初は便利だよね。 VBScript+HTAで色々やるんで、辞書みたいなのが欲しいんだけど、 良い本知ってる人居ますか? 機能逆引きできて、書式が出てればそれでOK(サンプルとか不要)な感じなんですが。 名前は忘れたけど、白地に文字の表紙で、10x20cmくらいの縦長の薄い本で VBScriptの簡易リファレンスみたいなのがあって便利だったんですが、 今は絶版だったと思います。 WSHとVBScriptで別々に買うのが良いのかな。
31 名前:デフォルトの名無しさん mailto:sage [2009/09/21(月) 08:45:01 ] VBScriptはHTAと組み合わせるとかなり色々できるようになるよね。 Windows上ならメモ帳で書いて、ほぼどこでも動作可能、 言語的にも色々な面でお手軽な所が好き。 クリップボード使えたりD&Dでの読み込み出来たり 文章や画像の表示もIE使えばIEで出来るだけ表示できるし 思った以上に色々できる。 ノートン先生に「悪意のあるプログラム」扱いされるのが許せん。 悪意は無いのに(´・ω・`)
32 名前:デフォルトの名無しさん mailto:sage [2009/09/21(月) 15:34:06 ] ノートン先生使ってないけど オレオレ署名入れてもだめ?
33 名前:デフォルトの名無しさん [2009/09/22(火) 02:33:00 ] MSXML2.XMLHTTPを使ってWebページの自動取得をしています。 Refererで制限かかってるページあるんですけれど、 VBSで偽装できますか?
34 名前:デフォルトの名無しさん mailto:sage [2009/09/22(火) 03:55:53 ] 調べたけど、久しぶりにDLLヘルを見た
35 名前:デフォルトの名無しさん mailto:sage [2009/09/22(火) 05:54:57 ] >>32 俺も使って無いからよく知らないが、 ノートン先生入れてる友人にVBScriptで作ったプログラム渡したら 「悪意のあるプログラムなので隔離しました」 とか出たらしい。 悪意はねぇよな。 自己レスだけどポケットリファレンスVBScriptって本が割りとよかった。 よく探したら家にあった。
36 名前:デフォルトの名無しさん mailto:sage [2009/09/22(火) 08:51:49 ] >クリップボード使えたり htmlfileは、about:blankのセキュ設定次第なんだよな ナンか回避方法ないかと、てstしたがムダだった
37 名前:デフォルトの名無しさん mailto:sage [2009/09/22(火) 10:35:46 ] >>36 HTAなら使用可能だと思うよ。
38 名前:デフォルトの名無しさん mailto:sage [2009/09/22(火) 13:09:39 ] >>37 今は、インターネッツのセキュ設定を変更しない方法で、IE使ってる もちろん、HTAも使えるんだけど 要は、アウトプロセスじゃなくインプロセスでやりたくなったわけ^^
39 名前:33 [2009/09/23(水) 16:57:22 ] 33です。 CreateObject("InternetExplorer.Application")して Navigateメソッドで自己解決しました。 ところで取得したDocumentオブジェクト内のImageオブジェクトを そのままファイルに保存すること、できませんか?
40 名前:デフォルトの名無しさん mailto:sage [2009/09/24(木) 00:47:53 ] VBScriptとHTAでファイルのバックアップを自動で取るプログラム作ったんだけど、 作業途中で止める方法をどうするかで困ってる。 何か良い方法ないかな。 ループで指定フォルダ下のファイルを、まぁちょっと色々加工してから自動的に別の場所にコピーするんだけど、 処理中はHTAのボタンとかは弄れないし・・・ 別のHTAで識別用ファイルを生成して、そのファイルを発見し次第、緊急停止 という方法を思いついたけど、どう考えてもスマートなやり方じゃないよね。
41 名前:デフォルトの名無しさん mailto:sage [2009/09/24(木) 03:43:52 ] >>40 処理中止後の後処理が不要であればCScript [CTRL]+[C]で処理を止めることができる
42 名前:デフォルトの名無しさん mailto:sage [2009/09/24(木) 06:54:04 ] >>41 ありがとう。 わりと大事なファイルのバックアップで、 DVDへの書き込みとサーバー上へのファイル移動を行なうから、 出来るだけ強制終了的な終わり方は避けて、 何らかの方法でループ中に判定で正常終了したい。 あと、HTAで使ってると、WScriptやCScriptと違ってmshtaとして動くから そういうショートカットキーとかは使えないんじゃない?
43 名前:デフォルトの名無しさん mailto:sage [2009/09/24(木) 11:10:46 ] >>42 HTAのボタンを常に押せる状態にしたければ、実処理を別プロセスにする方が良い 私ならCScriptで作った「バックアップ処理」と「ロールバック処理」をキックするけどね [CTRL]+[C]を使わない場合は↓のようにしてEOF検出変化を利用する 待ち側:判定用ファイルをリードオンリーで開きっぱなしにして定期的にEOFを判定 指示側:判定用ファイルに追記
44 名前:デフォルトの名無しさん mailto:sage [2009/09/24(木) 13:29:26 ] >>43 実処理を別プロセスにする というのが良さそうですね。それで試してみます。 バックアップ処理自体はCScriptに投げてHTAの方の処理は終了、 緊急停止などGUI操作専用にするって感じですかね。 一つのファイルを開いておいて中身で判定というのも、ファイル自体の存在チェックよりは良さそうですね。 値の受け渡しも出来るし、進行状況の表示にでも使おうかな。
45 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 14:36:41 ] これまでCユーザでしたが、最近業務でVBScriptを使うようになり現在勉強中の者です。 VBScriptを使っていて、ちょっと不便だなと思ったことがあります。 それは、関数にオブジェクトのプロパティを参照渡しすることができないということです。 たとえば、call swap( obj1.x, obj2.y )を実行して、obj1.xとobj2.yの値を 入れ替えようしても、うまくいきません。 うまくオブジェクトのプロパティを参照渡しする方法は無いのでしょうか? よろしくお願いします。
46 名前:デフォルトの名無しさん [2009/09/26(土) 14:37:30 ] すみません。ageさせてください。m(_ _)m
47 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 16:39:14 ] >>45 無理。 プロパティは事実上、Get/Setという2つの関数からできているのと同じ(正確にはSetRefの場合もあるが)。 そういう意味で変数と違うから参照渡しはできない。 VBSだとCallByNameも使えないしねえ。
48 名前:デフォルトの名無しさん [2009/09/26(土) 20:47:02 ] だな
49 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 21:42:18 ] ASPが出た頃はこれからVBScriptが主流になると思っていたが 今では書店でもあまり見かけなくなった
50 名前:45 [2009/09/27(日) 17:19:57 ] >>47 ありがとうございました。
51 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 00:27:08 ] WSH Lab.掲示板の過去ログ読んでたら、vbsからインプロセスで窓オブジェを使う方法がわかった 先人恐るべし
52 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 01:11:17 ] オブジェを飾ってどうするつもりだ
53 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 20:49:18 ] つまらん
54 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 22:07:29 ] IEを操作するクラスを作っています。 IEからのイベントに応答する場合、 CreateObject("InternetExplorer.Application","IE_") などと書きますが、 コールバックされる IE_ から始まるプロシジャを自作クラス内に置くことはできませんか? あるいはc++でいうスタティックなプロシジャにするにはどう書けばよいのでしょうか。
55 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 16:46:21 ] VBSで二重起動防止ってどうやればいいでしょう? Mutexとか使えると良いのですが・・・
56 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 19:48:29 ] VBScriptの機能拡張はCOM一択
57 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 22:13:00 ] >>55 fso.opentextfile(wscript.scriptfullname,8)
58 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 22:17:26 ] >>54 executeglobal "set IE_hoge=getref(""hoge"")"
59 名前:デフォルトの名無しさん mailto:sage [2009/12/11(金) 09:07:23 ] scripting.dictionaryは順序ほ保持してくれる連想配列ですか?
60 名前:デフォルトの名無しさん mailto:sage [2009/12/11(金) 10:04:50 ] できないことは多すぎるくせに、キッチリすることを偏執なまでに要求するひどい言語だった >>1 には悪いが、モダンな言語使った方が絶対楽だ!
61 名前:デフォルトの名無しさん mailto:sage [2009/12/11(金) 23:53:14 ] 一体何をやろうとしたんだ?
62 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 19:22:48 ] scripting.dictionaryはVBScriptと関係ないな
63 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 11:45:12 ] >>61 恋人ができるスクリプト
64 名前:デフォルトの名無しさん [2009/12/30(水) 21:47:15 ] Win7になってなにか変わった?XPの時に使ってたvbsが使えなくなったんだけど XPでは、右クリック→送る から以下のvbsでファイル更新日を変えてたんだけどWin7では更新日が変わってくれなくなった。なんでだろ? もちろんcygwinはちゃんとセットアップしてあるし、touch.exe 単体で更新日は変えれてる。 option Explicit Dim objFSO Dim objWshShell dim objArg Set objFSO = CreateObject("Scripting.FileSystemObject") Set objWshShell = CreateObject("Wscript.Shell") for each objArg in Wscript.Arguments if objFSO.FileExists(objArg) then ' 更新日変更 objWshShell.Run "C:¥cygwin¥bin¥touch '"+ objArg + "'", 0 end if Next
65 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 22:08:06 ] >>64 なんでfsoで更新日を変更しないの?
66 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 22:17:55 ] おぉ 変更できないのか
67 名前:64 [2009/12/31(木) 10:41:22 ] どうもcygwinのtouch側の問題みたい。 パスに日本語があるとダメッぽい。Pathがアルファベットだけなら更新日が変わってくれた。 ディスクトップのパスは「c:¥User¥[xxx]¥Desktop」と英語表記だからOKなのかな? XPの時はどうだったろ? この前、cygwin自体がUTF8対応で変更されたみたいだからその影響かな?
68 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 15:58:06 ] >>64 なんでshell.applicationで更新日を変更しないの?
69 名前:64 [2009/12/31(木) 22:30:07 ] う〜ん、やっぱりvbs側かなぁ パスに日本語があると exe 側に渡される引数が「'」で挟まれた状態のまま渡されてくる 'C:\Users\myname\Desktop\aあ' C:\Users\myname\Desktop\a 「'」で挟まないとパスに空白があると上手く動いてくれないし >68 >なんでshell.applicationで更新日を変更しないの? どの関数を使うの?
70 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 23:21:17 ] >>69 なんで「"」でパスを挟まないの?
71 名前:64 [2010/01/01(金) 18:19:34 ] vbs以前の問題としてExplorerの段階で「"」で挟んだ文字列が作られてくる 専用の改造版touch.exeを作って対応するかなぁ 単純な「"」を打ち消すだけのラッパでOKかな >>70 > >>69 > なんで「"」でパスを挟まないの? > 「"」で挟んでも一緒だった
72 名前:デフォルトの名無しさん mailto:sage [2010/01/01(金) 19:05:41 ] >>69 なんでPowerShell使わないの?
73 名前:デフォルトの名無しさん mailto:sage [2010/01/01(金) 19:30:48 ] なんで質問ばっかなの?
74 名前:デフォルトの名無しさん mailto:sage [2010/01/01(金) 20:25:56 ] どれが質問なの?
75 名前:デフォルトの名無しさん mailto:sage [2010/01/01(金) 20:43:47 ] >>69 なんでtouchのショートカットにしないの?
76 名前:デフォルトの名無しさん mailto:sage [2010/01/17(日) 05:13:38 ] てか、VBScript開発でなんでIDEなんて要るのか 疑問に感じる
77 名前:デフォルトの名無しさん mailto:sage [2010/01/19(火) 15:15:29 ] なんでtouchのショートカットにしないのるのか 疑問に感じる
78 名前:デフォルトの名無しさん mailto:sage [2010/01/28(木) 20:32:06 ] VBScriptとJScript 実行速度は同じ?
79 名前:デフォルトの名無しさん mailto:sage [2010/01/28(木) 21:10:29 ] >>78 VBScriptの方が若干高速 実行速度より性質の違いを気にするべきだと思うけど・・・
80 名前:デフォルトの名無しさん mailto:sage [2010/02/23(火) 15:31:29 ] PowerShellはIE操作出来ないからな。 やっぱVBSしかないか〜
81 名前:デフォルトの名無しさん mailto:sage [2010/02/23(火) 21:53:27 ] VBSなら一応Windows95やWindowsNTでも使える。 外部コマンド関連などWindows9x系とWindowsNT系で挙動が微妙に異なる場合もあるが。
82 名前:デフォルトの名無しさん mailto:sage [2010/03/05(金) 01:09:06 ] てっきり化石スレかと思ったら比較的新しいんだなw 別にここでもいいんじゃないの VBSで便利なプログラムを作れスレ pc12.2ch.net/test/read.cgi/tech/1170492587/
83 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 22:01:08 ] 初心者dosからきました。 やりたいことは、 既存のタスクを一括で"タスクを実行するためにスリープを解除する” に変更したいです。 schtasksのオプションでは出来ないため、悩んでます。 ttp://64.4.11.251/en-us/library/aa383306%28VS.85%29.aspx Property WakeToRun As Boolean とかかれても具体的にどうすればいいやら
84 名前:デフォルトの名無しさん mailto:sage [2010/03/28(日) 23:31:11 ] ttp://social.technet.microsoft.com/Forums/en-US/ITCG/thread/b1a8b34f-8a21-43d8-90b5-127e69289116
85 名前:デフォルトの名無しさん mailto:sage [2010/04/09(金) 01:13:23 ] ttp://msdn.microsoft.com/en-us/library/aa383665(v=VS.85).aspx
86 名前:デフォルトの名無しさん mailto:sage [2010/04/16(金) 00:56:42 ] BrowseForFolder について質問なんですが Optionsに&H4000を指定して ファイルも表示出来る状態にした場合に 選択されたファイルのパスを取得する方法はありますか?
87 名前:デフォルトの名無しさん mailto:sage [2010/04/16(金) 01:46:45 ] ない
88 名前:デフォルトの名無しさん mailto:sage [2010/04/16(金) 03:51:36 ] SHBrowseForFolder()
89 名前:デフォルトの名無しさん [2010/04/25(日) 18:54:39 ] 代わりに 8856F961-340A-11D0-A96B-00C04FD705A2 か 55136805-B2DE-11D1-B9F2-00A0C98BC547 を使えばやりたいことはできるんじゃないか
90 名前:デフォルトの名無しさん mailto:sage [2010/06/04(金) 23:30:39 ] getref、クラスの中のメソッドも参照しろよ!
91 名前:デフォルトの名無しさん [2010/06/05(土) 18:12:50 ] 今更ながらに、VBScriptで.netのクラスを一部使用できることを知った。 technet.microsoft.com/ja-jp/magazine/2007.01.heyscriptingguy.aspx
92 名前:デフォルトの名無しさん mailto:sage [2010/06/09(水) 19:00:51 ] >>90 クラスの中からexecuteglobalでglobal contextに作ればよい
93 名前:デフォルトの名無しさん [2010/06/12(土) 13:48:17 ] やりたいこと WSH(VBS)から別途準備したxlsファイルのA列のデータの入っている最終行の行番号の取得 理由 xls内でマクロ(VBA)があるとファイルを開くたびに有効するかの問い合わせがある為 xls内にはマクロを組まず、外部からvbsで取得をしたい。 わからないこと xls内でVBAで取得する場合には、"Range("A65536").End(xlUp).Row"で取得できる。 しかし、外部のVBSからはEnd(xlDown)が使えないようでエラーしてしまう。 同様に"SpecialCells(xlLastCell)"もダメ・・ 教えてほしいこと 何か良い方法がないか教えてください。 ------ こんな気持ち悪いコードしか思い浮かばない・・・・ Set getExcel = WScript.CreateObject("Excel.Application") getExcel.Workbooks.Open("C:\book1.xls") For i = 65536 To 1 Step -1 If getExcel.Worksheets(1).Cells(i, 1) <> "" Then e = i Exit For End If Next WScript.echo("last row:" & e)
94 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 14:08:01 ] ExcelVBAの定義(xlDown,xlLastCellなど)はvbs側でそのまま使えない vbs側では「自分で定義して使う」or「値を直接入れる」しかない
95 名前:sage [2010/06/12(土) 14:24:07 ] >>94 サンクス! 今のところ、上の気持ち悪いコードしか思い浮かばないので、もう少し考えてみる。 自分で定義・・か、少し時間がかかりそうだな。俺には ありがと
96 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 19:09:10 ] WSFでExcelへの参照を明示する手もある。拡張子wsfでたぶんこんな感じ。 <?xml version="1.0" encoding="Shift_JIS" standalone="yes" ?> <job> <reference guid="{00020813-0000-0000-C000-000000000046}"/> <script language="VBScript"> <![CDATA[ Set getExcel = WScript.CreateObject("Excel.Application") getExcel.Workbooks.Open("C:\book1.xls") For i = 65536 To 1 Step -1 If getExcel.Worksheets(1).Cells(i, 1) <> "" Then e = i Exit For End If Next WScript.echo("last row:" & e) ]]> </script> </job>
97 名前:デフォルトの名無しさん [2010/06/12(土) 19:28:01 ] >>95 今回は自分で定義する必要は無いかな。 >>94 さんの言うとおり、値を直接入れれば終わり。 msgbox getExcel.sheets(1).cells(65535,1).end("-4162").row で動くはず。 試してみて。 ExcelやVBの定数を調べる時は、 イミディエイトウィンドウに ?xlup と入力してリターン押すと値が表示されるよ。
98 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 19:44:17 ] >>95 一応動作確認したよ。きちんと動いてくれました。 VBSはあまり触らないんだけど、workbookをsetさせるのって出来ないのかな。 あまりスマートじゃない構文になってしまって、ちょっと悲しい。 dim Ex dim a const BkPath = "ブックのパス" const BkName = "ブック名" set ex = createobject("excel.application") ex.workbooks.open(bkpath& "\" & bkname) a= ex.sheets(1).cells(65535,1).end("-4162").row ex.workbooks(bkname).close msgbox a 何とかブックを開かずに取得出来るとスマートですね。 excel4macroでブックを開かずにデータを取得出来たはずなので、 そっちも少し試してみようと思います。
99 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 19:54:28 ] excel4macroだと、セルを直接指定しないと取得出来ないので、できないかもしれません。 スレ汚し失礼しました。
100 名前:デフォルトの名無しさん mailto:sage [2010/06/18(金) 21:10:59 ] a="10" b=20 if a > b then wscript.echo """10"" > 20" else wscript.echo """10"" <= 20" end if で、 a > b が真になるのは、どういう理屈からでしょうか?
101 名前:デフォルトの名無しさん mailto:sage [2010/06/18(金) 22:24:42 ] >>100 比較演算子では、一方の式が数値、他方が文字列の場合、数式の方が文字列式より小さくなる。 msdn.microsoft.com/ja-jp/library/cc392349.aspx ところが、If文に変数でなく即値を記述するなどいろいろ試してみると 結果が違ったりして、厳密な変換ルールは謎
102 名前:デフォルトの名無しさん mailto:sage [2010/06/18(金) 23:07:00 ] >>101 どうもありがとうございます。 "10" > 20 は偽なんですよね。悩ましい… 明示的に数値か文字列かどちらかに変換するしか なさそうですね。
103 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 08:30:26 ] >>102 VBSはVartiant型しか宣言出来ないのだから、 やはり型変換の手間が必要な時もあるよね。
104 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 01:35:49 ] >>96-99 ありがとう! 助かった。 お礼が遅くなってごめんよ
105 名前:デフォルトの名無しさん [2010/07/07(水) 09:24:08 ] スクリプトで、「そのドライブが存在するかどうか」を判定するには どうすればよいのでしょうか? 存在するか否かを判定させて、処理させるか否かを分岐させたいと思っています。 ネットワークドライブに分かり易く名前を付ける為、バッチファイルの中で ------------------------------------------------------------ NET USE F: \\ochinko\chinchin /USER:kintama penis NET USE G: \\192.168.0.69\共有 /USER:hiv aids c:\ND_rename.vbs ------------------------------------------------------------ と記載し、ND_rename.vbsの中で ------------------------------------------------------------ strDrive = "F:\" strName = "Fカップ" With CreateObject("Shell.Application").NameSpace(strDrive) .Items().Item().Name = strName End With : :(以下ドライブ分同様の記述) ------------------------------------------------------------ としています。 これだと、相手のPCが落ちている場合等、毎回VBScriptのエラーが 出てきて精神上よろしくないのです…そのドライブが存在しないのならば 処理を飛ばせればよいのかと思いました。
106 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 10:09:03 ] >>105 msdn.microsoft.com/ja-jp/library/cc392473.aspx www.atmarkit.co.jp/fwin2k/tutor/cformwsh09/cformwsh09_02.html
107 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 20:18:54 ] >>105 cscript c:\ND_rename.vbs
108 名前:デフォルトの名無しさん mailto:sage [2010/07/29(木) 10:59:40 ] メモリにアクセスして書き換えるってどうやるの? ゲームやってるときに限界突破とかしたい
109 名前:デフォルトの名無しさん [2010/07/29(木) 11:57:16 ] hideyoshi.2ch.net/test/read.cgi/motenai/1280135499/174,190 これをVBScriptで書き直せ
110 名前:デフォルトの名無しさん mailto:sage [2010/07/29(木) 13:50:20 ] 自分で書けばよかろう 何がしたいんだ?
111 名前:デフォルトの名無しさん mailto:sage [2010/09/13(月) 18:13:46 ] On Error Resume Next がいまいちよく解りません… 「実行時エラーを発生させたス テートメントの直後にあるステートメント、または、On Error Resume Next ステートメントが入っているプロシージャから最後に呼び出しを行ったステー トメントの直後のステートメントに制御を移動」… つまり、どっからどこまでがエラー処理が必要で、どこからが通常通りエラーメッセージ吐いて終了してくれるんでしょうか
112 名前:デフォルトの名無しさん mailto:sage [2010/09/13(月) 19:11:19 ] on error resume next は on error goto 0 で閉じるもの。 2つセットで覚えておくと良いよ。 resume next ってのは、例えエラーを吐いたとしても無視して次の行に移動するって事。 エラーが起きるって事はプログラムの不備なので、しっかりプログラミングが出来れば、 ”基本的に” on error resume next を噛ませる必要は無いよ。 エラー処理面倒だから無理やり動かしちゃえ!ってのは最悪のケース。
113 名前:デフォルトの名無しさん mailto:sage [2010/09/13(月) 19:36:12 ] 使えれば素直にそれを使ったんですが On Error GoTo 0 が無い&ネット接続不可の環境なんです(つまり書き込みしてる環境とは別の環境です) 色々なサイト読むと Resume Next だけでも安全なコードは書けるっぽいのでそれで何とかしようと思ったんですが… イマイチResume Nextの有効範囲がよく判らない(どうやらコードの最後までという訳ではないらしい?)ので質問しました
114 名前:デフォルトの名無しさん mailto:sage [2010/09/13(月) 21:09:19 ] いや、最後までだろ?
115 名前:デフォルトの名無しさん mailto:sage [2010/09/13(月) 21:34:22 ] >>113 関数/サブルーチン内なら該当の関数/サブルーチン終了まで 関数外なら最後まで だと思う On Error GoTo Next は基本的にエラー処理のモードを変更するような意味合いなので、 自分で明示的に再設定しない限り勝手に戻ったりはしない
116 名前:デフォルトの名無しさん mailto:sage [2010/09/14(火) 17:06:09 ] よくわからんなら、必要なところだけセットで括るようにすればいいじゃん。 他の言語での例外処理はそういうやり方になってるんだし。
117 名前:デフォルトの名無しさん mailto:sage [2010/09/14(火) 19:49:19 ] >>115 ありがとうございます。関数/サブルーチン終了までですね エラー処理部分だけサブルーチンに括るようにします
118 名前:デフォルトの名無しさん mailto:sage [2010/10/09(土) 21:43:59 ] 超基本的な質問で悪いんだけど 文字で「"」を扱うにはどうしたらいいですか? 改行はvbcrなのは分かったんですけど「"」は vbscript 「"」で検索してもだめだ・・・
119 名前:デフォルトの名無しさん mailto:sage [2010/10/09(土) 21:49:53 ] chr(34)
120 名前:デフォルトの名無しさん mailto:sage [2010/10/09(土) 21:56:43 ] ふおぉぉおありがとうございます!!!
121 名前:デフォルトの名無しさん mailto:sage [2010/10/10(日) 02:23:15 ] """"
122 名前:デフォルトの名無しさん mailto:sage [2010/10/10(日) 12:17:58 ] ImageMagickをVBscriptで使いたいのですがインストール後 Set im = CreateObject("ImageMagickObject.MagickImage.1") のところで 「ActiveXコンポーネントはオブジェクトを作成できません」という エラーが出てしまいます。 どうしたらVbscriptでImageMagickを使う事が出来るのでしょうか? OSはwindowsvistaです。 以下をやってみたけどやはり同じエラーが出続けます インターネットオプションのセキュリティのタブで レベルカスタマイズからActiveX関連の部分を有効にする regsvr32 /c /s "C:\Program Files\ImageMagick-6.6.4-Q16\ImageMagickObject.dll"の実行 ImageMagickのアンインストールと再インストール インストールフォルダーをC:\Program FilesではなくC:\にして管理者権限でインストール ImageMagickについていたTEST用の.vbsを実行してみましたが 同じSet im = CreateObject("ImageMagickObject.MagickImage.1")で 同じエラーが出るのでこの文章自体は間違っていないようです。 気になるのは インストール時にppm・・・というエラーメッセージが出た事です。 検索したらvbscriptには関係ないとのことでしたが一応状況を書きました。 ↓エラーメッセージのスクリーンショットです。 viploader.net/ippan/src/vlippan156229.jpg
123 名前:122 mailto:sage [2010/10/10(日) 16:19:07 ] あの・・・とりあえずVBscriptを再インストールしようと思うのですが どこでダウンロードできますか?? マイクロソフト内が広すぎてどのファイルか分かりませんでした。
124 名前:デフォルトの名無しさん mailto:sage [2010/10/10(日) 17:49:17 ] >>123 VBScriptは単体ではなく、WSHの一部だよ。 再インストールはできないし、その必要もない。 現在のWSHのバージョンは5.7だろ? 「WSH 5.6」、「WSH 5.7」で検索してみろ。 それでヒットするMSのページがそうだが、必要ないぞ。 まあ落ち着け。
125 名前:デフォルトの名無しさん mailto:sage [2010/10/10(日) 20:11:38 ] いきなり難しいことに挑戦してるなー。 そもそもImageMagickがCOM(ActiveX)を持ってるとは知らなかったぞ。 >インターネットオプションのセキュリティのタブで >レベルカスタマイズからActiveX関連の部分を有効にする これはIEおよびIEコンポーネントの設定。IEというブラウザの話なので無関係。 www.imagemagick.org/script/ImageMagickObject.php ここにはこう書いてあるぞ。 The ImageMagickObject is registered if the checkbox, Register ImageMagickObject, is checked at install time. >ImageMagickのアンインストールと再インストール 途中の6個あるチェックボックスの一番下に □ Install ImageMagickObject OLE Control for VBScript, Visual Basic, and WSH という、チェックの入ってないやつがあっただろう。チェック 入れた? でも新しいやり方ではなく、今まで通りのコマンドライン実行の方が良いのでは? 実行するのには"WScript.Shell"のExecメソッドとRunメソッドがある。それぞれちょっと違う。
126 名前:123 mailto:sage [2010/10/10(日) 21:25:09 ] >>124 そーなんですか・・・ありがとうございます。 >>125 □ Install ImageMagickObject OLE Control for VBScript, Visual Basic, and WSH にはチェック入れました。 コマンドライン?コマンドプロンプトでって事ですか? とりあえず動かないのも寂しいので Vbscriptでバッチファイルを自動で作るようにして ImageMagickでの動作はbatファイルにさせてみましたけど なんだかなあです。
127 名前:デフォルトの名無しさん mailto:sage [2010/10/10(日) 21:30:39 ] スマン、またトンチンカンなこと言ってたな。 ImageMagickObjectのインストール自体は出来てるんだな。 regsvr32 /c /s "C:\Program Files\ImageMagick-6.6.4-Q16\ImageMagickObject.dll" これを変なオプション付けずに、 regsvr32 "C:\Program Files\ImageMagick-6.6.4-Q16\ImageMagickObject.dll" でやったらどうか。 テストするならここのがいいんじゃない。 C:\Program Files\ImageMagick-6.6.4-Q16\ImageMagickObject\Tests
128 名前:デフォルトの名無しさん mailto:sage [2010/10/10(日) 22:02:34 ] up3.viploader.net/ippan/src/vlippan156404.jpg ↑やってみましたけどエラー出ました。 教えて貰ったtestsにあるvbsも同じ Set im = CreateObject("ImageMagickObject.MagickImage.1")で エラーになります。
129 名前:デフォルトの名無しさん mailto:sage [2010/10/10(日) 22:03:15 ] >>128 =>>123 です
130 名前:デフォルトの名無しさん mailto:sage [2010/10/10(日) 22:36:55 ] どうせ二人しか居ないよ。 一応、>>124 =>>125 =>>127 な。 あと、某スレの>>230 =>>232 =>>234 でもある。 しばらく手伝うよ。でも俺もレベル超低いからそこは期待するな。 とりあえず、 regsvr32 0x80070005 でググるべきだろう。
131 名前:デフォルトの名無しさん mailto:sage [2010/10/10(日) 22:50:23 ] >>128 "Users"ってことは、Vistaか7?管理者で実行してくれ。
132 名前:124 mailto:sage [2010/10/10(日) 23:15:22 ] あら他にも助っ人がいらっしゃるぞ。良かったな。 そう、管理者権限があやしい。 で、もしImageMagickObjectがうまく入ったとしても… こんな問題があるなら一般ユーザーには使いにくいのでは。 >Vbscriptでバッチファイルを自動で作るようにして そこまで出来るんならわざわざバッチファイルを作ってそれを起動するんじゃなく、 VBScriptにoraファイルをドラッグ&ドロップで開始し、いろいろやって、 直接VBScriptからImageMagickを起動すればいいじゃん、て話。 VBScript一本のみにするとなんか問題あるかな??
133 名前:123 mailto:sage [2010/10/11(月) 18:27:41 ] >>131 vistaです。 ありがとうございます! >>132 たしかにそうおもいますね いろんな人に使って欲しいから 無理に解決せず vbscript+バッチでやらせた方が いいですね。 某所でもアドヴァイスありがとう!!
134 名前:124 mailto:sage [2010/10/11(月) 22:45:15 ] >vbscript+バッチでやらせた方がいいですね。 どうしてもバッチから離れられないんだね(笑) まあ確実な逐次実行ならバッチも良い選択だが。 oratopsd4見たぞ。お疲れさん。短時間でここまで仕上げるとは、たいしたもんだよ。 説明含めていろいろツッコミどころが多いけどね… なんか不要な部分が多いね。Wscript.echoが大量に有る(笑) これ、クリックするのが大変そうだな。まだまだα版てとこかな。 次に進む前にかなり整理した方がいいんじゃない。 最初に一回CreateObjectしたらそれを使いまわし、最後にNothingするとか。 整理できれば複数ファイル対応に拡張するのも容易だろう。 ついでに重箱の隅をつついてみると、 ・chr(34)は""とも書けるよ。好みの問題だけど。 Dir1="""C:\Program Files""" ・wscript.sleep(4000)はいらないんじゃない?objWShell.Run zipname,0,True は終了待ちするから。 というか、今のobjWShell.Runする方法ではダブルクリックしてるのと同等だから、 各ユーザーの環境(インストールされてる解凍ソフト)の挙動に左右されると思う。 ZIPの解凍については「WSH ZIP 解凍」等でググって…もうやってるか(笑)
135 名前:123 mailto:sage [2010/10/11(月) 23:45:26 ] ああ、どうもアドヴァイスありがとうございます。 Wscript.echoは 一応「 ' 」で止めてありますけど の数はエラーを探した回数&またすぐに調べるようにってことで・・・。 オブジェはまったく調べてないので(もう日にちがやばいので・・・orz) もうおまじない的につけまくりましたwww
136 名前:124 mailto:sage [2010/10/12(火) 00:31:55 ] 「 ' 」で止めてないのが9個もあるけどそれでいいのか(笑) じっくり取り組めば不可能だったことも可能になると思うよ。 まあゆっくりやってください。
137 名前:デフォルトの名無しさん mailto:sage [2010/10/12(火) 01:14:05 ] >>136 ぐえっ直しとくよ・・・ 指摘ありがとう!
138 名前:124 mailto:sage [2010/10/12(火) 01:27:16 ] ああ、それと、 ベクターにある「ZIP.VBS」は見といたほうがいいと思う。 www.vector.co.jp/soft/winnt/util/se355605.html ZIP作成も出来るぞ。
139 名前:123 mailto:sage [2010/10/12(火) 01:45:42 ] >>138 それは試したけど駄目だった・・・ というかまだよく分かってないときにやったから 出来なかっただけで 次は出来るかもしれないですね! ありがとう!!
140 名前:デフォルトの名無しさん mailto:sage [2010/10/16(土) 21:05:46 ] VBScriptでスクリーンセーバーの「モニタの電源を切る 時間」を設定する方法を教えてください。
141 名前:デフォルトの名無しさん mailto:sage [2010/10/19(火) 22:35:46 ] sendkeys
142 名前:デフォルトの名無しさん mailto:sage [2010/10/25(月) 20:55:06 ] powercfg
143 名前:デフォルトの名無しさん mailto:sage [2010/11/02(火) 18:32:21 ] 保護モードで動いているか調べる方法を教えてください
144 名前:デフォルトの名無しさん mailto:sage [2010/11/02(火) 20:30:50 ] 保護モードではできないことをやってみればよいのでは?
145 名前:デフォルトの名無しさん mailto:sage [2010/11/02(火) 22:12:47 ] たとえば?
146 名前:デフォルトの名無しさん mailto:sage [2010/11/03(水) 10:11:02 ] c:\ にファイルつくるとか
147 名前:デフォルトの名無しさん mailto:sage [2010/11/03(水) 12:58:00 ] それってUACと勘違いしてない?
148 名前:デフォルトの名無しさん mailto:sage [2010/11/05(金) 00:52:23 ] 区別してやらないことをやってみればわかるな
149 名前:デフォルトの名無しさん mailto:sage [2010/11/21(日) 04:57:26 ] Windowsタスクスケジューラー権限昇格 0day www.exploit-db.com/exploits/15589/
150 名前:デフォルトの名無しさん mailto:sage [2010/11/22(月) 18:28:46 ] きれいなソースだね
151 名前:デフォルトの名無しさん [2011/04/02(土) 21:18:03.59 ] PCがWindows7になると、JoinDomainOrWorkGroupでドメイン参加ってできないですか? MSDNみてもいまいちわからないです。
152 名前:デフォルトの名無しさん mailto:sage [2011/04/03(日) 02:24:32.57 ] >>151 俺も良く分からんが、これじゃないか? ttp://blogs.technet.com/b/junichia/archive/2009/08/24/3276197.aspx
153 名前:デフォルトの名無しさん [2011/04/03(日) 22:24:17.80 ] >152 レスサンクスです。これをベースにつくったんですけれど、 XPは参加できたけど、7はダメだったんです。 もうちょっと見直してみます。
154 名前:デフォルトの名無しさん [2011/04/04(月) 21:22:28.89 ] Win32_NetworkAdapterConfigurationで IPV6のアドレスを取得条件で省きたいんですが、 可能でしょうか?
155 名前:デフォルトの名無しさん mailto:sage [2011/04/04(月) 22:10:51.61 ] うん
156 名前:デフォルトの名無しさん mailto:sage [2011/04/06(水) 00:25:25.01 ] >>155 アオマエに聞いてるんじゃネェよ。とっとと失せな!
157 名前:デフォルトの名無しさん mailto:sage [2011/04/15(金) 18:21:51.45 ] うん
158 名前:デフォルトの名無しさん mailto:sage [2011/04/27(水) 23:51:46.09 ] いかんな‥‥2年かけて158か‥‥必死さが、全く伝わってこない‥‥w
159 名前:デフォルトの名無しさん mailto:sage [2011/05/01(日) 17:40:42.29 ] スクリプトでセキュリティゾーンと保護モードを調べる方法を教えてくれー
160 名前:デフォルトの名無しさん mailto:sage [2011/05/17(火) 18:36:00.43 ] プロパティを表示して引っこ抜け
161 名前:デフォルトの名無しさん [2011/06/07(火) 13:14:19.32 ] 今ASP(クラシック)&VBS勉強してるがダメか?
162 名前:デフォルトの名無しさん mailto:sage [2011/06/18(土) 03:53:30.64 ] ラテン語だって勉強していいんだから
163 名前:デフォルトの名無しさん mailto:sage [2011/06/28(火) 01:30:43.46 ] 全然必死さが足りない
164 名前:デフォルトの名無しさん mailto:sage [2011/06/28(火) 18:09:17.69 ] ieのmenuextでクリック箇所のフォント、色、文字サイズを調べるにはどうすりゃいい?
165 名前:デフォルトの名無しさん mailto:sage [2011/07/01(金) 21:05:32.84 ] スレ違い それはIEの話であって、VBSの話じゃない ActiveXアプリケーション(IEとかExcelとか、MS以外だとIrvineとか)の話まで VBSの話として扱うと、なんでもありになって収拾がつかなくなるからな
166 名前:デフォルトの名無しさん mailto:sage [2011/07/02(土) 19:05:37.43 ] external.event.srcelement.style.font
167 名前:デフォルトの名無しさん mailto:sage [2011/07/02(土) 22:15:03.42 ] まったくの初心者です。 自分なりにネットで調べてもよくわからなかったので、よろしければ教えてください。 VBSで"notepad.exe"を起動させたいとき、 Execメソッドを使うと瞬時にメモ帳が起動するのに、 Runメソッドだと2〜3秒たってからメモ帳が起動します。 Runメソッドというのは、もともとそういうものなのでしょうか? Runメソッドを使ったときでもメモ帳を瞬時に起動させることはできないでしょうか? よろしくお願いします。
168 名前:デフォルトの名無しさん mailto:sage [2011/07/03(日) 00:12:47.25 ] >>167 俺はExecしか使わんけど www.atmarkit.co.jp/fwin2k/operation/wsh05/wsh05_02.html ここに「別プロセスとしてプログラムを起動する」と書いてあるから、それで多少時間がかかるんじゃない。 話は違うかも知れんけど、 AccessのVBAでもRunSQLとExecuteってのがあって、 RunSQLが非同期実行でExecが同期実行。 ExecuteだとSQL実行中にエラーがあると教えてくれるが、 RunSQLだと失敗しててもエラー吐かないから普通は使わない
169 名前:デフォルトの名無しさん mailto:sage [2011/07/03(日) 00:42:23.03 ] >>168 ありがとうございます。 Runメソッドを使ったときも、Execメソッドのときのように 一瞬で起動してくれるといいのですが、もともと使い道が違うのかもしれません。 もう少し勉強してみます。教えていただいたURLも参考になりました。 m(_ _)m
170 名前:デフォルトの名無しさん mailto:sage [2011/07/03(日) 16:11:41.79 ] runはshellexecute() execはcreateprocess() だから
171 名前:デフォルトの名無しさん mailto:sage [2011/07/03(日) 22:14:58.87 ] >>170 ありがとうございます。 shellexecute()、createprocess()というのを 調べてみます。
172 名前:デフォルトの名無しさん [2011/11/22(火) 12:55:38.53 ] 調べた結果は?
173 名前:デフォルトの名無しさん mailto:sage [2011/11/22(火) 22:13:48.07 ] 結果往来
174 名前:デフォルトの名無しさん [2012/03/09(金) 12:53:56.73 ] VBScriptのClassは継承できないのではなく、継承する必要性が全く無い事にようやく気が付いた...orz
175 名前:デフォルトの名無しさん [2012/03/09(金) 20:55:28.95 ] VBScriptよりJScriptの方が配列の扱いが柔軟だし作りやすい けどWindows上でのパスを扱うならエスケープ扱いを受けないVBScriptの方が勝手がいい 自分の中で必死に話し合ってみた
176 名前:デフォルトの名無しさん [2012/03/10(土) 11:14:56.41 ] VBScriptのClassがヤバイほど面白れぇ... 何これ、派生クラスは作れないのに、派生クラス使ってコード書くのとコード量が変わらねぇw
177 名前:デフォルトの名無しさん mailto:sage [2012/03/10(土) 13:45:22.16 ] ラブレター
178 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/08(日) 15:50:37.20 ] >>176 基底クラスを書かない分むしろ短かったりする
179 名前:デフォルトの名無しさん mailto:sage [2012/05/09(水) 02:18:33.22 ] 起動してバックグランドでキー監視って出来ませんか? 指定したキーが押されたら処理が始まって終わったらまたキー待ちという処理をしたい。
180 名前:デフォルトの名無しさん mailto:sage [2012/05/09(水) 12:04:19.21 ] >>179 VBSにそういう機能はありません。 そういう機能を持ったCOMを自作することで、VBSで目的を実現することは可能ですが だったらCOM作るより普通にexe作った方が良いでしょう。 あとはAutoHotkeyというスクリプトツールだと、比較的簡単に目的のこと出来ますよ。 「起動したらBGでキー監視」はAHKのデフォルト機能で、起動するだけでやってくれるから、あとは キー::Run, wscript.exe 〜.vbs って書けば、AHKが常駐してキーが押される度にVBS実行してくれる。 もちろんAHKの言語覚えて、VBS使わずに全ての処理をAHKにやらせてもいいし。
181 名前:デフォルトの名無しさん mailto:sage [2012/05/09(水) 18:34:23.16 ] ありがとうございます。 早速、試してみます。
182 名前:デフォルトの名無しさん mailto:sage [2012/05/11(金) 16:13:03.66 ] alt ctrl shiftならバックグラウンドでもsetintervalなどで監視できるよ