タグ

VBScriptに関するbabydaemonsのブックマーク (43)

  • .NET で Windows Script Components を呼び出す( スタンバイ状態にする )

    【VBS & PHP】スクリプトからスタンバイ状態にする で作成した Windows Script Components を .NET から呼び出します Windows Script Components は、COM ではありますが、タイプライブラリを使用して .NET のコンポーネントとして呼び出すのは無理があるので、 それぞれの言語の特性をふまえて呼び出し処理を記述します。 VB.NET もともとが VBScript なので最も親和性が高く、 CreateObject で簡単に呼び出す事ができます。 これは、通常の Microsoft の COM も同様です。 Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles

  • JRA IPATで情報を取得 8.2 開催地・競馬場単位でループさせる - 三流君 ken3のmemo置き場

    次は、開催地、競馬場単位でループさせてみます。 場名を覚えた後にループさせてみます。 '競馬場・開催地でループする。 jのループ For j = 0 To nJYO - 1 '↑上で保存したnJYOの分だけ回る でループを作り、 'name=m の オプションのj番目を選択する objSELECT.Item("m").OPTIONs(j).selected = True '単純にj番目をselected Trueでセレクト状態にする で選択後、決定を押し、 Call IE_INPUT_Click_VALUE(objIE, "決定") '決定を押し、開催地を切り替える '表示を待つ※競馬場・開催地の切り替えを待つ Call IE_WAIT 1R-12Rのレース 終了後、 メインメニューへ戻るのを忘れずに。 テスト結果・作業動画 : http://www.youtube.com/watch?v

    JRA IPATで情報を取得 8.2 開催地・競馬場単位でループさせる - 三流君 ken3のmemo置き場
    babydaemons
    babydaemons 2016/05/05
    面倒くさそう。。。
  • トラストメモ@ブログ [VBScript] 他のvbsファイルをインクルードする

    VBScriptファイル毎に全処理を記述するとファイルサイズが大きくなり、同じ関数をそれぞれのVBScriptファイルに記述するのはスマートではない。 VBScript標準では外部ファイルをインクルードする機能はないのでインクルードする関数を作成した。 ただし、このインクルードの関数は共通化できない。 例えば先に記載したEncode.vbsをインクルードする場合は以下のように記述する。 Dim objFSO Dim objStream Dim strPath Dim strDir '自身のファイルパスを取得 strPath = WScript.ScriptFullName '親ディレクトリを取得 Set objFSO = WScript.CreateObject("Scripting.FileSystemObject") strDir = objFSO.GetFile(strPath).P

    babydaemons
    babydaemons 2013/04/22
    あー、もう、この糞言語、氏ね!
  • wshでDOSコマンドを利用するには。 パイプ処理 - OKWAVE

    http://www.okweb.ne.jp/kotaeru.php3?q=305516 の続きです。 wshでDOSコマンドのnetstat -nの値をメッセージボックスで表示するには、次のスクリプトの”コマンド”の部分にnetstat -nを入れることで可能です。 (FlossenEngel 様作成) ------------------------------------- Set WshShell = WScript.CreateObject("WScript.Shell") Set objExec = WshShell.Exec("コマンド") Do While objExec.Status = 0 WScript.Sleep(100) Loop sout = "" Do While Not objExec.StdOut.AtEndOfStream sout = sout & o

    wshでDOSコマンドを利用するには。 パイプ処理 - OKWAVE
    babydaemons
    babydaemons 2013/02/15
    "Execは標準入力、標準出力、標準エラー出力をトラップします。横取りしちゃうんです。だからStdOutで取り出せる"
  • 2009-03-07

    Windows管理の仕事が入ってきそうで今年に入ってからVBScriptのことをいろいろと調べてみた。Microsoftが出しているここ(http://www.microsoft.com/japan/msdn/scripting/)のリファレンスでほとんど事足りるのだけれど、リファレンスの目立たない箇所に記載されていたりあるいは記述がなかったりするマイナーな機能もあるので、補足してみる。 予約語を変数名や関数名として使う []で括るとClassやPropertyのような予約語を変数名や関数名として使える。リファレンスには記載なし。もともとVisual Basicの機能らしい。 Classで自分自身を参照する JavaC++ならthis、Rubyならself、PerlPythonならメソッドの第1引数だが、VBScriptではMeというキーワードを使う。これももともとVisual Bas

    2009-03-07
    babydaemons
    babydaemons 2013/01/24
    こんなところにも悲しい戦いをしてた人が居る!
  • サービス終了のお知らせ

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

    babydaemons
    babydaemons 2013/01/17
    atan2(x, y)が無いVBScript醜すぎ。#まぁ、こんな言語で数値計算やGISとかふつーやらないかw
  • CByte 関数|VBScript関数リファレンス

    ASP の開発や SQLServer の DTS を作成する際、ど忘れしたVBScript関数を簡単に探せるように構成し直しました。 VBScript関数名は分かっていて、使い方や引数が思い出せない時などは普通のVBScriptヘルプで調べられますが、VBScript関数名が出てこない、○○をするVBScript関数ってあったっけ?、という場合はとても便利です。 CByte(expression) 指定された角度のタンジェントを返します。 引数 expression 任意の式を指定します。 解説 ある操作結果を既定のデータ型ではなく、特定のデータ型として表す必要がある場合には、通常、内部処理形式変換関数を使ってコードを記述します。CByte 関数を使うと、通常、通貨型 (Currency)、単精度浮動小数点数型 (Single)、倍精度浮動小数点数型 (Double) を使う計算の中で、バ

    CByte 関数|VBScript関数リファレンス
    babydaemons
    babydaemons 2013/01/09
    シュールな間違い見つけたw > "CByte 関数 CByte(expression) 指定された角度のタンジェントを返します。 "
  • ASP(VBScript) 「コンパイル エラー エラー ‘800a0409’」の回避策

    久しぶりにハマりました・・・ HTML ファイルを読み込んで特定の HTML のコメント <!-- こういうの --> を置き換えるスクリプトを作ってたんですが、以下のようなエラーが発生して動きません。 Microsoft VBScript コンパイル エラー エラー ‘800a0409’ 終了していない文字列型の定数です。 なにこれ? ソースは以下のような感じなんですが、エラーになってしまいます。 str = Replace(str_html, "<!-- 変換前 -->", "変換後") 「終了していない文字列型の定数です。」って ” を閉じ忘れていたりする時に出るエラーなので特殊文字(エスケープ文字)が含まれてるのかと思ったんですが、どうやら違うようです。 要は、<!– が悪いみたい。 確かに script タグ内でも利用できるので、怪しいといえば怪しいですが・・・ 展開されるの??

    ASP(VBScript) 「コンパイル エラー エラー ‘800a0409’」の回避策
    babydaemons
    babydaemons 2013/01/07
    あー、糞レガシーASPめーっ!
  • VBScript で、UTF-8でエンコードするにはどうしたらよいでしょうか?…

    VBScript で、UTF-8でエンコードするにはどうしたらよいでしょうか? このサイトのような変換がしたいです。 http://home.kendomo.net/board/decode/ 例: 「テスト」→「%E3%83%86%E3%82%B9%E3%83%88」

    babydaemons
    babydaemons 2013/01/07
    邪道じゃないと使い物に糞言語なんですよ>VBScript "少し邪道ですが、VBScript から JScript の encodeURI 関数を呼び出すという方法があるようです。"
  • vbsの配列を少しだけ使いやすくするために配列Classを作ってみた。 - harry’s memorandum

    rubyperlを使った後にvbsを使うと面倒で仕方がない。 せめて配列ぐらいは、LLっぽくできないものかと思い少し試してみた。気のせいかもしれないがもしかしたらvbsもやればできる子かもしれないと思った。 できたClass。配列のように扱うけど中身はHash(Dictionary)。 Option Explicit Class CustomArray Public x, items Sub Class_Initialize() Set items = CreateObject("Scripting.Dictionary") x = 0 End Sub Sub Class_Terminate() items.removeall End Sub Public Function push(ByVal item) items.item(x) = item x = x + 1 End Funct

    vbsの配列を少しだけ使いやすくするために配列Classを作ってみた。 - harry’s memorandum
    babydaemons
    babydaemons 2012/12/18
    RubyやPerlっぽいオレオレ配列
  • Studio ODIN - blog風小ネタ集 > VB6/VBS で、クラスのデフォルトプロパティを定義する

    Java などでは、toString メソッドがあり オブジェクトを表現する文字列を返すことができます。 VB6 や VBS で、同じようにオブジェクトをメソッド無しで 指定した時に、オブジェクトの値を出力することができれば デバックなどに役に立ちそうです。 VB6 や VBS の場合、 次の例のように Default を指定して Get プロパティを作成します。 (名前は何でもOKです) Class Test Public Default Property Get ToString() ToString = "Test Class" End Property End Class 下のようにオブジェクトをメソッドなしで指定すれば、 「Test Class」と表示されます。 Dim t Set t = New Test Msgbox t

    babydaemons
    babydaemons 2012/12/18
    いまさらな感が前回だが、ToString()が実装できるのは便利w
  • Parsing XML file with VBScript

    babydaemons
    babydaemons 2012/12/13
    "要素が1つだけであることがわかっている場合は、selectSingleNode メソッドでそのノードの参照を取得できる"で.textプロパティを参照 #VBScriptなんて嫌いだ。orz
  • http://japan.internet.com/developer/20051005/28.html

  • DOMを利用してXMLデータへアクセス

    Dim objDOM, rtResult Set objDOM = WScript.CreateObject("MSXML2.DOMDocument") rtResult = objDOM.load("Sample.xml") If rtResult Then procDispDatas objDOM.childNodes Else MsgBox "XMLオブジェクトの作成に失敗しました。" End If Set objDOM = Nothing Sub procDispDatas(objNode) Dim obj For Each obj In objNode If obj.nodeType = 3 and obj.parentNode.nodeName = "title" Then MsgBox obj.parentNode.nodeName & " : " & obj.nodeVal

  • On Error Resume Nextの正しい使い方 - Windows Script Programming

    よく、On Error Resume Nextを先頭に置いたスクリプトを見かけますが、 まるで、Option Explicitをスクリプトの先頭に置くような感覚で、 「適当にエラーをリカバるオプション」のような誤解があるのではないでしょうか。 On Error Resume Nextの意味は、言わば、 「エラーがあっても無視して、どうなってもいいから暴走しろ」ですから、 そんな、自暴自棄に走らなくても、と思ってしまいます。 では、どう書くのが清く、正しく、安全か、というと、 例えば、リネーム、 Set fo=fso.GetFile(filename) fo.Name=newName は、同じ名前があるとエラーになります。 そこで、まず、 Set fo=fso.GetFile(filename) Sub Rename(fo,newName) On Error Resume Next fo.N

    On Error Resume Nextの正しい使い方 - Windows Script Programming
    babydaemons
    babydaemons 2012/12/07
    "因みに、JScriptのtry catch風をVBScriptでお望みの場合"
  • レガシーASP用のLog4jっぽい奴を書いてみた - babydaemons’ blog

    敢えて命名すると、 Log4aspですかね。安直ですが。 ソースコードを晒しておく 'ログ出力レベル設定 Private Const LEVEL_DEBUG = 0 Private Const LEVEL_INFO = 1 Private Const LEVEL_WARN = 2 Private Const LEVEL_ERROR = 3 Private Const LEVEL_FATAL = 4 'シングルトンのLoggerインスタンスを返す Dim singleton_logger__ Function Logger_getLogger If IsEmpty(singleton_logger__) Then Set singleton_logger__ = New Logger Set Logger_getLogger = singleton_logger__ End Function

    レガシーASP用のLog4jっぽい奴を書いてみた - babydaemons’ blog
  • Deep Decryption - VBScript Tips - 可変長配列の作成

    WSH(VBScript) はその手軽さでかなり気に入っています。C++ 等で気合を入れなければならないようなものも、(良いか悪いか)お手軽に作れてしまいます。 そんなVBScript でも、「可変長配列がない」という点は気に入りません。スクリプトは必要なときに、お手軽に作れるのが魅力であり、どんどん配列に要素を突っ込んで処理したいということは多々あるのですが、「えーっと、この配列のサイズはいくつ必要かな...」などと考えながらコードを書くのは非常にうっとうしいものがあります。また、実際にプログラムを実行してみないと、いくつ配列を確保すればよいかわからない場合というのも結構あります。 こういう場合、他の言語では「可変長配列」があり、配列のサイズが必要に応じて増減してくれるため、最初に配列のサイズを決める必要がなく、非常に楽です。 このページでは、VBScript のちょっとレアなテク

    babydaemons
    babydaemons 2011/06/06
    またこのページ見るとは。。。もうVBScriptは触りたくないなー。orz
  • Deep Decryption - VBScript Tips - 配列再考

    Vector クラスとIterator クラスを作ってからはVBScript 組み込みの配列を使うことがめっきり少なくなってしまいました。一方でVector クラスの説明記事に、検索エンジンから通常の配列の説明を求めてこられる方も多いみたいなので、ここで組み込みの配列についてまとめておこうと思います。 ただまとめるだけならあまり面白くはないので、後半はヘルプに載っていない内容を書きます。なお、その後半についてはVBScript のネタにはなりますが、実用度はまるでありません。あらかじめお断りしておきます。 配列の定義: まずは配列の宣言から。 Dim testArray(5) とすると、0〜5 の「6個」の変数が使用できます。0番目の要素にアクセスするためには 以下のように書きます。

  • VBSのクラスオブジェクト - FSWikiLite

    VBScriptでちょっとだけオブジェクト指向に触れるという企画ものです。VBScriptのClassは機能がシンプルですが、うまく使えるようになるとそれなりに効果的です。せっかくですので、VBScriptでクラスを使ったスーパーテクニックなどを紹介しようと思います。 VBSのクラスオブジェクト利用メモの目次 VBSのクラスオブジェクト利用メモの目次 クラス宣言 メソッド プロパティ コンストラクタ、デストラクタ クラス変数、クラスメソッド 作成したクラスをパッケージ化する オブジェクトの配列 オブジェクト配列を使ったテクニック 継承 クラス宣言 Classとはオブジェクトの設計図です。どんなデータと機能をまとめたオブジェクトにするか?をClassを使って定義します。 例えば「」を管理するプログラムを書くとして、「タイトル」と「価格」のデータを扱いたいなら、以下のようにクラス定義します。

    babydaemons
    babydaemons 2011/05/30
    これ擬似的にクラスの継承を実現してるって書いてあるけど、IS-AじゃなくてHAS-Aのデリゲートパターンだよね。 ※頑張れば出来ないことも無いけど、ビミョーな言語仕様だ。orz
  • Loading...

    babydaemons
    babydaemons 2011/05/30
    あー、もー、ふぁぼったーにしか情報が無いとか言語文化的にあり得ないorz さすが、VBScript!!