SQLの窓 イラストAC フリー素材

2009年06月28日

ExecuteGlobalを使用して文字列内の定義文を有効にして、httpで取得した関数ライブラリを使う

ExecuteGlobal は、ほとんど反則のようなステートメントですが、運用して3年近くなるので
もっと WEB で使えばと思うのです。これ使うと、ASP で、他ドメインにある関数定義使えたり
しますし、なんと言ってもメンテするのに一箇所でいいのが最高です。

VBScript : MDB作成 / http 経由で関数ライブラリを読み込む
ASP : 別ドメインにある関数ライブラリを使用して Mdb を作成する

スクリプトタグで外部参照できる wsf( WSH ) や HTA では、普通に src 属性で読み込めばいいのですが、
以下のルールを守って作っておくと、ASP で使えるだけでなく、ローカルで動的に変更してから関数化できます。
REM **********************************************************
REM ■ 動的にローディングする為の注意
REM 1) UTF-8N で保存する
REM 2) コメントは REM を使用する
REM 3) 条件式として = を使わない
REM ■ 問題回避の対策
REM .htaccess 
REM AddType "text/plain" .vbs
REM **********************************************************


posted by at 2009-06-28 20:25 | VBScript | このブログの読者になる | 更新情報をチェックする

2009年06月23日

WSHでVBScriptからJavaScriptを呼び出す場合は先に定義が必要のようです



WSH : VBScript から JavaScript の呼び出し


そうそう、使う場面も無いのでたまたま使えてたので気にしてませんでしたが、
あらためてテストするとそういう事でした。ちょっと不思議では有りますが、

HTML 上のオブジェクトがローディング時にもそうなので、まあそうなのかなと。

これで、WSH では .wsf を使う場合において、多少気を使えば VBS と JS の
相互呼び出しは特に問題は無いですね。HTA は、画面表示後であれば当然ながら
OK ですし、ローディング中は試して無いですが、おそらくダメなんでしょう。

VBS から サーバへデータを POST するのに URL エンコーディングが必要なので
テストしてたらそうなりました。




posted by at 2009-06-23 22:16 | VBScript | このブログの読者になる | 更新情報をチェックする

2009年06月15日

SendToディレクトリにあるファイルの表示・非表示を設定する

あまり使わない方もおられるかもしれませんが、「送る」という機能は、ユーザーが最も
カスタマイズしやすい、ランチャー機能です。

他の Shell 拡張は、専門知識が無いと無理なものが多いですが、
これは、ショートカット( またはスクリプト )をそこへコピーするだけでエクスプローラ
から使えるようになります。また、ディレクトリを作成すれば、階層構造のメニュー
が出来上がりますし、一時的に必要無い場合は「非表示」にすれば良いだけです。

Sendto_mtn

このツールは、その表示・非表示の一括処理と、
表示状態のエントリのプロパティを1クリックで表示させます。




posted by at 2009-06-15 18:06 | VBScript | このブログの読者になる | 更新情報をチェックする

2009年06月13日

IEのツールバーにアプリケーションを追加する

結局、IE 拡張メニューと、IEツールメニューと、IEツールバーボタンは根っこは同じものです。

Ie_toolbar_button 

何に使うかと言われると、ちょっと悩みますが、
表示されているページをオブジェクトレベルで操作できるのは変わっていません。
もともと、メニューとツールバーはすぐ使えるかいったんメニューを開くかぐらい
の違いですしね。

ただ、IE7 はまだ使い慣れていないので、ツールバーがすぐ使えるという印象はまだ無いですね。
少なくともアイコンで操作をイメージしやすいのは間違い無いですけれど。



posted by at 2009-06-13 22:17 | VBScript | このブログの読者になる | 更新情報をチェックする

2009年06月12日

IEのツールメニューにアドオンとして追加する実行形式

Ie_toolmenu

IEのツールメニューにアドオンする

実際は、実行できる種類には3種類あって、レジストリのエントリとしては、
Exec : 実行ファイル
Script : IE拡張メニューで実行できるスクリプト( なので、サンプルは .htm で中は VBScript )
ClsidExtension : C++ で書かれた dll

があります。


基本、IE拡張メニューと同じですが、マウスカーソル下のオブジェクトには
ツールメニューなのでアクセスできません。( ページ全体に対する処理になります )


 

posted by at 2009-06-12 17:11 | VBScript | このブログの読者になる | 更新情報をチェックする

たま・・・にGUIDが必要になりますが、手近なのはこれでしょう

WSH : GUID取得


IE のツールメニューにアドオンする場合、
とにかくユニークキーとしての GUID が必要になるのですが、

Microsoft ですし、これが一番いいと思います。

Guid

posted by at 2009-06-12 15:09 | VBScript | このブログの読者になる | 更新情報をチェックする

2009年05月06日

小さなテキストエリアを大きいところへ転送して編集して戻す

09/05/07 12:00 インストール部分にバグがありました。修正済みです

テキストエリア入力拡張

今時のリッチなテキスト入力ではできませんが、通常のテキストエリア入力で
大きさが妙に小さくて困る事がよくあります。そういう時に使えるはずです。
( ブログのテンプレート設定なんてのは、基本狭いです・・・ )


Textareaex

posted by at 2009-05-06 03:03 | VBScript | このブログの読者になる | 更新情報をチェックする

2009年04月26日

IE拡張メニューのメンテナンスツール。表示・非表示を一括設定

FC2 に専用ブログ作って1ヶ月以上経ってました。( 長期不在のため広告出てた・・ )
やっとプロトタイプができました。

凝ろうかシンプルにしようかずっと悩んでて、後回しになってたのですが、
結局シンプルにしました。非表示に設定するのが大目的だったので、
削除や名称変更も直接その場所に regedit でジャンプさせるからくりを組み込んで終わりです。

これでたいてい使えると思いますが、IE8 用に拡張子自動変更とかは考えてます。

HTA でやっているのは、手書きブログ用のツールでいろいろユーザ対応してきて、
特に HTA そのものが動かないと聞いた事がなかったので、それなら一番使い勝手がいい
HTA にしておけばいいと思いました。



Ieex

 

posted by at 2009-04-26 19:12 | VBScript | このブログの読者になる | 更新情報をチェックする

2009年04月24日

指定時間経過後強制ログオフ

Windows オリジナルでは、指定時間帯( ログオン時間 )をこえるとログオフさせる事が
できるようですが( Net User で時間設定してローカルセキュリティポリシーで機能を有効にする )、
未検証で、世間的にもあまりやってないようです。

スクリーンセーバーの機能を利用すると、一定時間放置した時にログオフとかするような情報
もありましたが、電源オプションのほうが現実的です。

これは、目的はたまたまログオフですが、
WMI のイベントのサンプルとして他でも使える場合があると思い、作成しました。
dtBase = Now()
dtTarget = dtBase

' 30 秒後に強制ログオフ
dtTarget = DateAdd( "s", 30, dtTarget )
TargetH = Hour( dtTarget )
TargetM = Minute( dtTarget )
TargetS = Second( dtTarget )

Set obj = GetObject("winmgmts:\\.\root\cimv2")
Set objEvents = obj.ExecNotificationQuery( _
	"select * from __InstanceModificationEvent " & _
	"where TargetInstance isa 'Win32_LocalTime' " & _
	"and TargetInstance.Hour = " & TargetH & " " & _
	"and TargetInstance.Minute = " & TargetM & " " & _
	"and TargetInstance.Second = " & TargetS & " " _
)

Set objLatestEvent = objEvents.NextEvent 

Set colOperatingSystems = _
GetObject("winmgmts:{(Shutdown)}").ExecQuery( _
"Select * from Win32_OperatingSystem") 
For Each objOperatingSystem in colOperatingSystems 
	' 0:通常( マニュアル上4は強制とあるが、通常でも強制ログオフ )
	ObjOperatingSystem.Win32Shutdown(0) 
Next 
posted by at 2009-04-24 23:40 | VBScript | このブログの読者になる | 更新情報をチェックする

2009年04月06日

IE拡張メニュー用アプリケーションのスケルトン

IE 拡張メニューを作成するにあたって、手書きブログ用カスタムパレットツールでいろいろ
やってきた事をまとめ直して新たに、雛型を作成しました。

こちからダウンロードできます。


このサンプルスケルトンでは、カーソルの下のテキストを取得するというものですが、

  1) カーソル下のテキストを取得
  2) 選択状態のテキストがあれば、それを取得
  3) リンクの場合は、テキストと URL を取得
  4) HTML タグによっては( PRE など ) その範囲内のテキストを取得

取得してテキストを開いたウインドウ内にあるテキストエリアにセット
して表示するまでの機能を持っています。


Get_text

実際は、このウインドウ上でテキストを加工して何かをするといったアプリケーション
を想定しています。次のアーティクルでは、サーバーサイドの力を借りて、
ブラウザ上で取り込んだ文字列をその場でメールしてしまうアプリケーションの説明をします。


posted by at 2009-04-06 20:50 | VBScript | このブログの読者になる | 更新情報をチェックする
Seesaa の各ページの表示について
Seesaa の 記事がたまに全く表示されない場合があります。その場合は、設定> 詳細設定> ブログ設定 で 最新の情報に更新の『実行ボタン』で記事やアーカイブが最新にビルドされます。

Seesaa のページで、アーカイブとタグページは要注意です。タグページはコンテンツが全く無い状態になりますし、アーカイブページも歯抜けページはコンテンツが存在しないのにページが表示されてしまいます。

また、カテゴリページもそういう意味では完全ではありません。『カテゴリID-番号』というフォーマットで表示されるページですが、実際存在するより大きな番号でも表示されてしまいます。

※ インデックスページのみ、実際の記事数を超えたページを指定しても最後のページが表示されるようです

対処としては、このようなヘルプ的な情報を固定でページの最後に表示するようにするといいでしょう。具体的には、メインの記事コンテンツの下に『自由形式』を追加し、アーカイブとカテゴリページでのみ表示するように設定し、コンテンツを用意するといいと思います。


※ エキスパートモードで表示しています

アーカイブとカテゴリページはこのように簡単に設定できますが、タグページは HTML 設定を直接変更して、以下の『タグページでのみ表示される内容』の記述方法で設定する必要があります

<% if:page_name eq 'archive' -%>
アーカイブページでのみ表示される内容
<% /if %>

<% if:page_name eq 'category' -%>
カテゴリページでのみ表示される内容
<% /if %>

<% if:page_name eq 'tag' -%>
タグページでのみ表示される内容
<% /if %>
この記述は、以下の場所で使用します


Android SDK ポケットリファレンス
改訂版 Webデザイナーのための jQuery入門
今すぐ使えるかんたん ホームページ HTML&CSS入門
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX