スポンサーリンク

WSH/JScript

バッチで,リファラを改ざんし,ユーザエージェントを改ざんし,POSTリクエストを自動発行しよう (HTTPリクエストヘッダを自由に生成)

バッチのまとめTOPへ Webアプリケーションのセキュリティチェックや自動テストを行なうために,WebサーバやAPサーバに対して,「任意のHTTPリクエスト」を手軽に発行したい。 「任意のHTTPリクエスト」とは,例えば・・・ リファラ(リンク元)改ざん ⇒画面…

コマンドラインでメール送信する方法 (WindowsのバッチでSMTP通信。CDO.Messageを使用)

バッチのまとめTOPへ プロジェクトに,コミュニケーションスキルの低いメンバがいる場合,どうしたらよいか。 一つの方法は,その人の作業を,何らかの手段によって「見える化」すること。 手軽な方法として,下記のような手がある。 プロジェクト内での共通…

IE8で,ファイルのアップロードを自動化する方法  (WSH/JScriptでブラウザを自動操作するサンプルコード)

バッチのまとめTOPへ IE8で,ファイルのアップロードを自動化する方法を発見した。 以下はWSH/JScriptによるサンプルスクリプト。IE8(Windows XP)で動作確認済み。 upload.js // IEを起動 var ie = WScript.CreateObject("InternetExplorer.Application");…

バッチで,レジストリの値の読み取り・書き込み・存在判定をしよう(WSH/JScriptでレジストリ操作のサンプルコード)

バッチのまとめTOPへ WSH/JScriptで, レジストリのキーの存在判定 レジストリの値の読み取り レジストリの値の書き込み,新規作成 をするためのサンプルコード。 サンプルコード reg.js // 対象とするレジストリのキー var reg_key = "HKEY_LOCAL_MACHINE\\…

メモリ・CPUなどハードウェアの構成情報を,バッチで取得しよう (WSH/JScriptでWMIを使う方法)

バッチのまとめTOPへ WSH/JScriptから,Windowsのハードウェア情報を取得するサンプルコード。 CPU情報を取得 メモリ情報を取得 ほかにも大量の情報を取得可能。 すぐに試せる。 以下のコードを保存して,ダブルクリックするだけ。wmi.js WScript.Echo( getC…

SVNで,コミット時にログの入力を強制する (Windows版subversionのサーバ側フックスクリプトの作成方法)

バッチのまとめTOPへ SVNで,コミット時にコメントの入力を強制する方法。 想定するSVNの構成: サーバ側:WindowsでSubversionを使っている。 クライアント側:WindowsでTortoise SVN を使っている。 より良いライブラリ管理のために。 応用すれば,コミッ…

ブラウザ上で,Officeのヘルプキャラクターを動かしてみよう (IE上でJavaScriptからMS Agentを呼び出す方法)

JavaScriptプログラミングのTOPへ Officeのヘルプキャラクタ(例えば「マーリン」とか,「カイル君」とか,「冴子先生」)を,ブラウザのHTML上で表示する。IE上だけでなく,WSHでバッチとしてデスクトップで呼び出す事も可能。 サンプル(IEで閲覧) http:/…

コマンドプロンプトを,Webブラウザとして使おう (WSH・JScriptでXmlHttpRequest)

バッチのまとめTOPへ コマンドプロンプトを,Webブラウザとして使う。 バッチファイルから WebサイトにGETリクエストを発行し, Webサイトが返すレスポンスに,最低限の「レンダリング」を施す。 という事を行なう。

バッチで,wavなどの音声を再生しよう (コマンドプロンプトから音を鳴らす方法)

バッチのまとめTOPへ batファイル中で,さりげなく音声を再生する方法。(wav/mp3とか,MIDIとか) wavのファイル名を直接指定して実行するだけだと,Windows Media Playerが立ち上がり,再生後に消えてくれない。Playerが残ったままになてしまう。 →再生後はP…

IEを自動操作する時,ダイアログやポップアップをどう扱うか(ファイルアップロードやアラートのダイアログを処理する方法)

バッチのまとめTOPへ WSH JScriptでIE(IE7)を自動操作して ファイルをアップロードする(ファイル参照フィールドに入力する)。 ただし,ファイル参照ダイアログを避けて通る。 promptとかalertなどの厄介なダイアログに応答する。 方法。 おまけとして,S…

バッチで,ODBC接続の設定を追加・更新・表示しよう(odbcconf.exeの使い方:PostgreSQLでの使用例)

バッチのまとめTOPへ コマンドプロンプトのバッチから,ODBC設定を 新規作成 更新 一覧表示 する方法。接続先のDBMSの例としては,PostgreSQLの場合を取り上げる。 GUIだと,DSNを追加するためには コントロールパネル→管理ツール→データソース(ODBC) のダ…

パスワード付きのExcelの保護を,バッチで自動的に解除しよう (VBAマクロが見れないブックに対して,パスワードを自動入力)

バッチ・マクロのTOPへ Excel VBAは,パスワードで閲覧制限をかけることができる。 ※その方法: Excelブック内のマクロをパスワードで保護する方法 http://www.happy2-island.com/excelsmi... VBE上で,ツール>VBAプロジェクトのプロパティ>保護 を開く。 …

Excelのマクロを外部に吸い出して保存するバッチ (WSH/JScriptで,VBAのソースコードだけを抜き取る)

バッチ・マクロのTOPへ Excelから,VBAのコードを吸い出すバッチ。 モジュールごとに,(モジュール名).bas の名前で保存される。

画面のスクリーンショットを,Excelブック内に自動的に保存するバッチ

バッチ・マクロのTOPへ 画面のスクリーンショット(キャプチャ)を,バッチで自動的に取得しよう。そしてExcelブック内に,自動的に保存する。 開発プロジェクトで,画面定義書などのドキュメントを効率的に作成するために利用可能。 使う技術は Excel VBA W…

ブラウザのビジー状態を判定するための,より良い方法 (WSHでIEを自動操作する際,COMのアプリケーションイベントを利用する)

バッチのまとめTOPへ ActiveX経由でCreateObject("InternetExplorer.Application") などして,IEを自動操作する際,「ブラウザのビジー状態の解除の判定」は,正確にやろうとすると結構難しい。よくあるのは, (DOM操作)ブラウザ上で,submitボタンクリッ…

ブラウザの自動操作の最大の問題,「タイムアウト」を克服するには

ブラウザの自動化を妨害する最後の壁,それはタイムアウト。Webページのロード時に,ブラウザのビジー状態が解除されず,いつまでも次のステップに進めなくなってしまう現象のこと。 どんなツールを使っても,タイムアウトは必ず発生する。自動化ツールをた…

WSH/JScriptで,Outlookを操作しよう (受信メール内からURLを抽出してみる)

バッチのまとめTOPへ WSHのバッチでOutlookにアクセスし,メーラー上の定型作業を済ませる。 そのための,"Outlook.Application"というAPIの使い方のサンプルコード。 サンプルコード 以下を open_url.js とかで保存し,ダブルクリック。 // Outlookの最新の…

プロジェクト専用のDSLで,効率的にIEを自動操作する(WSH/JScript)

バッチのまとめTOPへ 以下のエントリでは,JScriptでブラウザのオートメーションを行なうための基礎を述べた。 JScript / VBScript (WSH)で,IEを自動操作しよう http://d.hatena.ne.jp/language_and_engineering/20090713/p1 その続編として,プロジェクト…

サクラエディタのマクロで,CSSを自動整形しよう

バッチのまとめTOPへ サクラエディタ上で,CSSを自動整形したい。 例えば,エディタ上に div.hatena-asin-recommend { margin:4px 10px; padding:5px 4px; text-align:left; width:96%; } div.hatena-asin-recommend a { border:medium none; text-decoratio…

UTF8Nの複数テキストを,一斉に置換するバッチ (JScriptでUTF8Nのファイルを読み書き)

バッチのまとめTOPへ UTF-8 (BOM無し)のファイルがたくさんある。(例えばRuby on Railsのプロジェクトとか)これらのファイル内の文字列を,一斉に置換したい。 そのためのスクリプト。 サンプルコード 置換したい文字列を下記のようにテキスト内に保存。置…

WSH/JScriptで,XMLを読み込みする (コマンドラインからDOM操作)

バッチのまとめTOPへ WSHで,XMLをパースする。設定ファイルから情報を抽出したりできる。 ここでは,下記のページに載っている build.xml を解析してみよう。 Antを使う … 簡単なJava用ビルドファイルを記述する http://www.jajakarta.org/ant/ant-1.6.... …

CSVをExcelファイルに変換するスクリプト (JScript/WSHで,カンマ区切りCSVファイルから.xlsを生成)

バッチのまとめTOPへ JScript/WSHで,CSVを.xlsファイルに変換するスクリプト。 実は,Excelには致命的なバグ(致命的な仕様)があり,CSVの扱いがひどい。 どれほど工夫しても,CSVをExcel上で開くと, 列がずれたり セルの表示形式を楽に制御できず,値が…

JScript/WSH で,Excelファイルを読み書きしよう

バッチのまとめTOPへ JScriptからExcelを操作するコード。 新規Excelファイルの自動生成 既存のブックの読み書き などできて便利。

JScript / VBScript (WSH)で,IEを自動操作しよう

バッチのまとめTOPへ JScript / VBScriptでも,IEを自動操作(オートメーション)できる。テキストファイルをダブルクリックするだけで,ブラウザが動く。 しかも,ブックマークレットを自動実行することもできる。つまり,表示中のWebページに対してJavaScr…

PostgreSQLのバッチを,パスワードを聞かれずに実行する方法 (psqlも設定ファイル編集も不要)

バッチのまとめTOPへ PostgreSQLをバッチで自動実行する方法。パスワード入力なし。 PostgreSQLをコマンドラインから利用するためには,通常はpsqlを経由する。psqlは実行時に必ずパスワードを聞かれるので,バッチによる自動運転は不可能。 技術的雑談-Post…

JavaScriptの単体テストフレームワーク "simpleJsUnit" で,テスト駆動開発をしよう

simpleJsUnitは,JavaScriptのコードを単体テストするためのライブラリ。 シンプルさが特徴。(たった5キロバイト) コマンドラインでも ブラウザ上でも テストを実行可能。 以下は,このツールを使って,テストファーストなJavaScript開発を進める方法。 …

JavaScriptで,グローバル変数の存在判定をする3つの方法 ("window"の定義状況を確認したい)

JavaScriptプログラミングのTOPへ JavaScriptで,グローバル変数が存在するかどうか判定するための3つの方法。 3つのうち1つはよく使う。残りの2つは,特殊な状況(WSHとの使い分けなど)で役立つ。

共有フォルダ上で,マウスだけで一発でコマンドプロンプトを開く方法 (UNCパスへのpushdをバッチクリックで済ませる)

バッチのまとめTOPへ 「 \\127.0.0.1\hoge 」のような形式のパスをUNCパスという。ネットワーク上で共有されているフォルダのパスである。 UNCパス上でコマンドプロンプトを開こうとすると, Z:\>cd \\127.0.0.1\hoge '\\127.0.0.1\hoge' CMD では UNC パス…

ウィルス対策ソフトをかいくぐって ADODB.Stream を使う (WSH/JScriptでUTF8の入出力・続編)

バッチのまとめTOPへ 下記の記事では、バッチでかんたんに文字コード変換する方法を述べた。 JScript・WSHで、UTF-8でファイルの読み書きをする方法 (ADODB.Streamで文字コード変換するサンプルコード)http://d.hatena.ne.jp/language_and_engineering/200…

JScript・WSHで、UTF-8でファイルの読み書きをする方法 (ADODB.Streamで文字コード変換するサンプルコード)

バッチのまとめTOPへ 以前、 「バッチで文字列を置換する(JScriptでテキストファイル処理)」の記事で、 JScriptバッチによるファイル入出力の方法を掲載した。 その際は FileSystemObject を使っていたので、文字コードがShift-JISに限定されていた。 ADOD…