aki-aki さん 2001年 05月 29日 00時 13分 52秒


 aki-akiです。GW明け頃にVBSからの圧縮の仕方(サーバーへの引数の渡
し方)について、むたぐちさんに教えて頂きありがとうございました。
 皆様の書き込みもわからないことが多いのですが、少しずつ理解して行きたい
と思います。

To: いちにい さん
> Tipsとか、皆さん、どうやって管理してますか?
私はStory Editorと言うのを使っています。階層で管理出来ますし、階層の
ツリーを閉じたり/開いたり、階層の移動が出来たり便利です。どのツリーに保
存したかを忘れるのはしょちゅうですが、そんなのはゴリゴリと検索します。
本来はTipsとかを保存するためでなく、アウトラインプロセッサと呼ばれるソ
フトで物書きに利用するものなのですが。
 http://www.lares.dti.ne.jp/~cheebow/に最新版があると思います。


管理人むたぐち さん (mutaguchi@roy.hi-ho.ne.jp) 2001年 05月 28日 04時 36分 08秒
URL:http://www.roy.hi-ho.ne.jp/mutaguchi/

○掲示板検索スクリプトを使い倒そう

その一: 私が時々書いている、「掲示板内コラム」を抽出するためのキーワード
/\n[○●].*/

# あ、こういうときに、投稿者名検索モードが欲しくなってきますね(^^;
# name=管理人むたぐち /\n[○●].*/
# とかで検索したいかも。

その二:
以下募集中(考えてから書け)


To: ゆみ さん

> Set xl = Wscript.CreateObject("Excel.Application")
> xl.Visible = True
> Set book = xl.Workbooks.OpenText("c:\windows\temp\vbs\test.txt",,6)
> カンマ区切りのテキストファイルを6行目からExcelで読みこみたいので、OpenTextメソッドではなく、OpenTextメソッドを使いたいのですが、実行するとオブジェクトがありませんとエラーメッセージが出てしまいます。どうしたらよいのでしょうか? よろしくお願いします。

うーん。
文章にバグがありますね(^^;
OpenTextメソッドの代わりに、何を使いたいのでしょうか。

Excel2000のスクリプトリファレンスをはじめて見てみたんですが、
このオブジェクト・メソッド・プロパティの多さは何なんだ(笑)


To: 土屋 さん

> ファイルメーカーは、ver5からオートメーション対応になりました。
> が、まだ起動と終了とファイルメーカーのスクリプト実行くらいしか対応していないので、ファイルメーカーのスクリプトでせっせと作業を行うように設定して、それをWSHから起動するという感じです。

そういえば、土屋さんのページにはファイルメーカーのサンプルとTipsが
いっぱいあります。
http://www.jan.ne.jp/~kajika/index.html

Mac発祥なだけに、COMな世界にはまだ馴染めてないようですね(^^; > ファイルメーカー

同じMac発祥なソフトでも、Adobe Acrobatはここまで進化しているぞ。
(あ、でもフォームがないWSHでは呼び出し不可っぽい)
http://www.borncity.com/WSHBazaar/News5.htm
# ついでに。Kodak Imagingの機能を呼び出す話 http://www.borncity.com/WSHBazaar/News6.htm

あと、一太郎のマクロなんか、オブジェクトがCOMオブジェクトです(マクロ自体
はActiveX Scriptじゃないですが)。見習おう。
http://www2u.biglobe.ne.jp/~hidy/

> またファイルメーカー4.1からODBCにも対応しているので、
> WSHからそれを利用してデータの読み書きをおこなう手もあります。
> でも、ファイルメーカーのODBCはファイルメーカーを起動していないといけないし、遅いし、まだまだ発展途上の感じをもっています。

そうなんですか。まあ、ODBCとかなんとかの高度な次元までは行ってませんです(^^;
いちおう試薬リストはファイルメーカーで作られているんですが、紙に打ち出した
ものが使われるという体たらくで、とても「データベースで試薬管理」とはいえない
状態なのです。
今年はこの現状をなんとかする、て話だったのにな。
…うーん、これ以上書くと刺客が来そうなので、この辺でやめておこう。
来年、私が研究室内ネットワーク管理者になった暁には、なんとかしよう。

> DB初心者にとっては、非常に扱いやすいデータベースだと思います。マック版と互換性があって、マック界では圧倒的なシェアを誇っているようです。(最近パーム版も出たような)

見た記憶があります。> パーム版
MacとWinが混在する研究室には最適なデータベースソフトかもしれません。
(まだ有効利用してないが)

よだん。化学系の研究室では、古くからMacが愛用されておりました。というのも、
各種解析ソフトの多くが、Mac用のソフトであったためです。
これは、グラフィックやDTM・DTPの世界でMacが多用されていたのと同じ理由ですね。
最近、ソフトのWindowsへの移植が進んだため、Win使用者が増えつつあるのも、
これまた同じです。


To: いちにい さん

> ってことは、わざわざPC98版を買わなくても良いってことですね。

利用者から見ればそうですけど(^^;

DOS/V用とPC98用を別パッケージ化して、両方を使用している人から2倍の
収益を得るというメリットより、PC98用を販売するコストがかかるという
デメリットが問題になったんでしょうね(^^;
で、WinME, XPではそもそもPC98版を作るというコストが割に合わなくなったので
サポートをやめたんでしょう。

> と言うか、このPCは、借りもんで、自分のじゃない(爆)ので、
> 自分の買うときには、DOS/V機にします。
> PC98だと動かないソフトとか有るし。

PC98でしか動かないゲームをやって優越感に浸ろう。

> > FAT16/32で圧縮ですか。
> > お勧めしないですけどねえ…。ファイルシステム上のちょっとの傷が致命傷に
> > ならないのでしょうか?
>
> FAT16/32は、サスペンド機能が使えないので、辞めました。
> それとは、違う、ドライブスペースの方です。
> ディスク上のファイルなどを、1つのファイルにまとめる奴です。
> OLEファイルみたいな、ファイル中に、ディレクトリ構造を持つような。
> FAT変換よりも、危険な感じ。(笑)

ちょっと書き方がまずかったのですが、私が言いたかったのは、
FAT16やFAT32からドライブスペースを使ってドライブを圧縮するのは
危険じゃないのかなあ、ということです。(NTFSの圧縮機能と比較しての話でした)
理由はいちにいさんがおっしゃるとおり、ファイルを一つにまとめるためです。
その一つにまとめたファイルがちょっとでも傷つけば、そこに圧縮されたファイルが
全部一度に死ぬのではないかと。

それとは別に、FAT16からFAT32の変換ですが、これをやると、ごみ箱を空にするときとか
パフォーマンスが落ちるようです。
まあ、Win95OSR2の時よりかは、FAT32化の安全性は増しているのではないかと思います
けど。
(でもハードディスクが2Gなら、あんまりメリットはないですね(^^;)

> ソフトを5つくらい、MOにSETUPしてます。(笑)

おおう、そんなのありですか。

> > 五月病?
>
> 最近の若い人は、あまり為らないらしいです。(笑)

へえ、じゃ、私はもう若くないんですね。

> VBAですよ。
> なので、改造可能です。
> 只、プロジェクトにロックがかかっています。
> まあ、ベクターに、Excel97・2000のVBAロックが掛かっていても、中を覗ける
> ツールがアップされてるので、意味無いですけどね。

スクリプトエンコーダと同じようなものみたいですね。
まあ、ロックしてあるものを無理にこじ開けるマネもどうかと思いますし。

いちにい さん (gromit@mx1.freemail.ne.jp) 2001年 05月 28日 00時 51分 42秒

● 松島さん

>>画面が小さいので、ゲームのキャラとか、大変そう。

> ファミコン時代のドット絵やゲームボーイの画面とかを見ていると、
> うまくデフォルメしたり省いたりしているのが分かります。

そうなんですよねぇ。
あの技術が欲しいっす。
プラグインのアイコンを作っていて痛感しました。>自分の下手さかげん。(笑)
ツールボタンの画像なんて、16x16Pixelしかないんで、苦労しました。
シンプルだけど、機能を連想させる。そんな画像が描きたい。


>> 所で、Win98の起動ロゴって、何処で変えるんですか?

> 起動ドライブのルートディレクトリの LOGO.SYS です。

家の環境には、LOGO.SYSは、無いんですよ。
でも、むたぐちさんの情報で判ったんですが、LOGO.SYS を探して、
変更するって考えをしてたため、駄目だったんですね。
いずれにしても、勉強になりました。m(_ _)m


● 管理人むたぐちさん

> Win2000sp2はPC98対応らしいとどこかで聞きましたが、XPはさすがに(^^;

ってことは、わざわざPC98版を買わなくても良いってことですね。
と言うか、このPCは、借りもんで、自分のじゃない(爆)ので、
自分の買うときには、DOS/V機にします。
PC98だと動かないソフトとか有るし。


>> 圧縮に、20時間掛かりました。(死)

> FAT16/32で圧縮ですか。
> お勧めしないですけどねえ…。ファイルシステム上のちょっとの傷が致命傷に
> ならないのでしょうか?

FAT16/32は、サスペンド機能が使えないので、辞めました。
それとは、違う、ドライブスペースの方です。
ディスク上のファイルなどを、1つのファイルにまとめる奴です。
OLEファイルみたいな、ファイル中に、ディレクトリ構造を持つような。
FAT変換よりも、危険な感じ。(笑)
まあ、背に腹は・・・って感じで遣っちゃいましたけど、あれほど時間が掛かるとは。


> …あたらしいのをかおう!

マジ、欲しいっす。
今時、MMX150なんて・・・。
HDDは、2GBしかないし。
ソフトを5つくらい、MOにSETUPしてます。(笑)


> 五月病?

最近の若い人は、あまり為らないらしいです。(笑)


>> 所で、VBでも、EmEditorみたく、箱形選択が出来るはずなんですけど、
>> むたぐちさんのVBで、出来ます?

> VB6ですが、できないようです。
> 一応、ctrl, alt, shiftの全組み合わせを試しました。
> でも、プログラムを書くときに箱型選択って使うことあります?

自分の場合、たまに有りますよ。
しかし、VB6でも出来なかったとは、ガセネタですかね?
VBで出来るって、2カ所のサイトで見たんですが。
VCの間違いかな?
VBのアドインで作れないかな?


>> WSHの参照設定と、作成したスクリプトコードを、拡張子VBSでエクスポートするメニューを、
>> 追加するアドインでした。

> アドインってスクリプトなんでしょうか。
> なら、改良も可能かな?

VBAですよ。
なので、改造可能です。
只、プロジェクトにロックがかかっています。
まあ、ベクターに、Excel97・2000のVBAロックが掛かっていても、中を覗ける
ツールがアップされてるので、意味無いですけどね。


>> Tipsとか、皆さん、どうやって管理してますか?

> フォルダに放り込んでるだけです(^^;
> 閲覧には、自作のテキストファイルビューアを使ったりしてます。

今のツールを使う前は、ワードパッドにコピペしてました。
文章の先頭に、番号付きの項目作って、それで本文を検索してました。(原始的 笑)
ワードパッドだと、サイズが大きくなってくると遅いし、
流石に、管理できなくなってきたので辞めましたけど。(笑)


> 起動ロゴのビットマップイメージは、実はio.sysに含まれており、
> logo.sysはなくても起動ロゴが表示されます。
> logo.sys(sysといっても中身はビットマップイメージ)を自前で用意してやると、
> そちらが起動ロゴとして使われるようになります。

そうだったんですね。
コレでスッキリしました。
コレ。一年ほど前から未解決でした。(笑)


> データベースの話はまかせましたよ! (って(^^;)

自分も同じです。
サッパリ判んないです。(笑)

土屋 さん 2001年 05月 27日 22時 34分 55秒

◆ゆみさん
> Set book = xl.Workbooks.OpenText("c:\windows\temp\vbs\test.txt",,6)
の部分は、

xl.Workbooks.OpenText "c:\windows\temp\vbs\test.txt", , , , , , , , True
というような感じにした方がいいのでは。。。


ところで、ExcelやWordでも、Ctrlキーを押しながらホイールをまわすと、拡大縮小ができたんですね。

土屋 さん 2001年 05月 27日 20時 08分 24秒

◆むたぐちさん

>そういえば今年から、研究室の試薬管理をファイルメーカーproでやるという話があったな(^^;
>これ、オートメーションで動かせるのだろうか?

ファイルメーカーは、ver5からオートメーション対応になりました。
が、まだ起動と終了とファイルメーカーのスクリプト実行くらいしか対応していないので、ファイルメーカーのスクリプトでせっせと作業を行うように設定して、それをWSHから起動するという感じです。
(ファイルメーカーのスクリプトの起動は、Sendkeysでも可能なわけなんですが)

またファイルメーカー4.1からODBCにも対応しているので、
WSHからそれを利用してデータの読み書きをおこなう手もあります。
でも、ファイルメーカーのODBCはファイルメーカーを起動していないといけないし、遅いし、まだまだ発展途上の感じをもっています。

ファイルメーカーは単体でWebサーバーの役割ももっているので(ver5はXML書き出しもできる)、この機能を使ってデータの読み書きやファイルメーカーのスクリプト実行などを行う手もあります。
MSXMLなんか使って遊べそうな感じです。

DB初心者にとっては、非常に扱いやすいデータベースだと思います。マック版と互換性があって、マック界では圧倒的なシェアを誇っているようです。(最近パーム版も出たような)


管理人むたぐち さん (mutaguchi@roy.hi-ho.ne.jp) 2001年 05月 27日 18時 35分 26秒
URL:http://www.roy.hi-ho.ne.jp/mutaguchi/

To: いちにい さん

> 家のは、PC98なんで、OSの再セットアップに至ると大変なんですよ。
> (Win98アップデートにパッチ当てたり。)

Win2000sp2はPC98対応らしいとどこかで聞きましたが、XPはさすがに(^^;

> しかも、HDDを圧縮掛けて、何とか容量を稼いでる始末。(笑)
> 圧縮に、20時間掛かりました。(死)

FAT16/32で圧縮ですか。
お勧めしないですけどねえ…。ファイルシステム上のちょっとの傷が致命傷に
ならないのでしょうか?

> 元の環境に戻せればいいんですけどね。
> でも、そろそろ、クリーンSETUPしたい頃でもある。

…あたらしいのをかおう!

> > なんか脱力…。
>
> そう言う季節です。(謎?)

五月病?

> 所で、VBでも、EmEditorみたく、箱形選択が出来るはずなんですけど、
> 家のVB5じゃあ出来ません。
> 何故?
> むたぐちさんのVBで、出来ます?

VB6ですが、できないようです。
一応、ctrl, alt, shiftの全組み合わせを試しました。
でも、プログラムを書くときに箱型選択って使うことあります?

> WSHの参照設定と、作成したスクリプトコードを、拡張子VBSでエクスポートするメニューを、
> 追加するアドインでした。
> 保存したスクリプトを実行するマクロ等もあったけど、どうしてメニューに追加してないのかな?

アドインってスクリプトなんでしょうか。
なら、改良も可能かな?

> Tipsとか、皆さん、どうやって管理してますか?

フォルダに放り込んでるだけです(^^;
閲覧には、自作のテキストファイルビューアを使ったりしてます。
(ダウンロードのページで公開しているやつより高機能になってるんですが、
まだお見せできるレベルではないのです(^^;早く完成させたいですね)


To: mami さん

> IE5.5 SP1でファイルのダウンロードをするとき
> 指定したファイルではなく、
> 表示しているhtmlファイルがダウンロードされてしまいます。
> 「開く」ボタンを押した後(画面には表示されませんが)
> 「保存」としてダウンロードすると正常にファイルを取得できます。
> IEの設定があるのですか。

私も質問の意味がよくわからないのですが、
リンクが張られている文字列の上で右クリックし、「対象をファイルに保存」を
指定しても、リンク先のドキュメントが保存されるのではなく、
現在表示中のドキュメントが保存されてしまう、という意味でしょうか。
私はそういう現象に遭ったことがないのでわかりませんが、キャッシュがおかしいときの
現象に似ているような気がします。一度キャッシュをクリアしてみては?

> ところで、大変失礼&恥ずかしい質問なのですが
> WSHやVBSって何ですか?(きゃぁ〜、怒らないでください)

「WSHとは?」ってページを作っているんだから、まずそこから見てくださいよ(^^;
でも、あの文章自体がある程度の知識(バックグラウンド)を要求しているので、
そこがクリアできない方には門前払いになっている現状があると思います。
極端な話、「ユーティリティって何?」 とか。


To: よしぞー さん

> 現在、イントラ上でファイルのダウンロードをする仕組みを考えています。
> このファイルはExcelブックなどを想定していて、ブラウザ側の要求内容によりサーバ上でDBからデータを取得し、ファイルにデータを埋め込んだ形でダウンロードできるようにしたいと思っています。
>
> このサーバ上の処理をWSHで行いたいと考えているのですが、可能なものでしょうか?
> Excelへの書き込みは可能であることは確認できていますが、DB(Oracle)からのデータの取得については環境もなく、確認できていません。

まあ、ログを見ていただいてもわかると思うんですが、この手の話題は
まったくのお手上げ状態です(^^;
というわけで、皆さん、よろしくです。

> WSHとはどのぐらいのことができるのでしょう?(ヘルプを見てもよくわかりませんでした(^^ゞ)

「WSHとは?」ってページを作っているんだから、まずそこから見てくださいよ(^^; (again)

> VBでフォームを使わないで作るのと一緒と考えてもいいのでしょうか?

だいたいそう考えていいです。*.basだけが利用できるVB、という概念が近いのでは
ないでしょうか。
WSHは、いろんなスクリプト言語(公式なものはVBScriptとJScriptがあります)が使えるのが
一つの特徴です。そのうち、VBSはVBの機能限定版であるので、VBSであるという原因で、
VBにできてWSHにできないことというのがいっぱいあります。
VBSとVBの機能の差については、VBSのヘルプに書いてありますので参考にしてください。

また、フォームが必要な場合はHTAを使うという手もあるにはあります。
HTAについてはログを検索してみてください。


To: 高橋 さん

ありがとうございます。
データベースの話はまかせましたよ! (って(^^;)

> WSH -> Windows Script(ing) Host
> VBS -> VB Script
> です。

Windows Script Hostが正式名称になってしまったんですよね。
このページのタイトル、このままでいいんでしょうか…。

> http://homepage2.nifty.com/winfaq/w2k/
> で聞かれてみるといいかもしれませんね。
> OS別にページが分かれているので、注意して下さい。
> あと、環境・状況をきっちり書かないとレスが付きにくいと思いますよ。

# ある意味ネットニュースより厳しい掲示板かも知れぬ…


To: 土屋 さん

いつもありがとうございます。頼りにしてます。

本文については…う、コメントするところがない(爆)


To: 松島 さん

> いつの間にかに、Windows2000SP2に「Japanese」が追加されてたんですね。
> http://www.microsoft.com/windows2000/downloads/servicepacks/sp2/sp2lang.asp

正式版、出てたんですね。
ADSL開通後、テストも兼ねてさっそく落としてみることにします。

> ファミコン時代のドット絵やゲームボーイの画面とかを見ていると、
> うまくデフォルメしたり省いたりしているのが分かります。

ドット絵は本当に職人技ですよね。
いわゆる絵描きの才能とはまた違った技術が要求される世界です。
1ドット違うだけで受ける印象がまったく異なったりしますし。
(たとえばキャラクターで言うと目の位置、とか。あと「縁取り」をするかどうかで
「デフォルメ度」を変化させたり)
また、ファミコンでは、当時のハードウェアの性能上、1キャラクターあたり
4色のパレットしか使えないという制限があり、限られた色数で表現するという
技術もあったわけです。
「ドラクエ」の戦闘画面の背景が黒一色なのも、一つはパレットの節約のためである
と思います。(モンスターの縁取り線の黒が節約できる)

あと、音源のことも語りたいのだが、激しく関係がないので省略しよう…。

> > 所で、Win98の起動ロゴって、何処で変えるんですか?
>
> 起動ドライブのルートディレクトリの LOGO.SYS です。

起動ロゴのビットマップイメージは、実はio.sysに含まれており、
logo.sysはなくても起動ロゴが表示されます。
logo.sys(sysといっても中身はビットマップイメージ)を自前で用意してやると、
そちらが起動ロゴとして使われるようになります。

> > プログラミングの経験が浅い人でも、とにかく「目的どおりに動く」アプリを
> > 比較的容易に作ることができるというのは重要。
>
> スパイラルモデルで開発しやすいのがメリットの一つだと思うんですが、
> 延々と「作る→レビュー→仕様追加/変更」をしているうちに、予算と納期を
> 大幅にオーバー、という落ちを作る土壌となりがちなのがデメリット。

ええ、どちらかと言うと、納期とか予算とかがない世界、言い換えればプログラミング
とは無縁な世界でこそ威力を発揮するというか。
具体例を挙げます。
私は化学系の研究室に所属する大学院生なのですが、この研究室にある、とある測定装置は、
なぜか制御用アプリケーションが付属してません(^^;
その代わりに、測定装置制御用の関数が用意されたdllが付属しています。
そこで、この装置を使用する、プログラムとはまったく縁のなかった学生(私の先輩なんですが)が、
この装置を制御するアプリを作る羽目に。
そこで威力を発揮したのがVBです。私が最初先輩から相談を受けたときは、あまりにも
壮大な話で、正直、本当に完成するのか疑問に感じていたのですが、
結局、見事にこの制御プログラムを完成させました。
VBというお手軽プログラミング環境がなければ、完成には至らなかったのではないかと
思われます。

…え、なんで私が作らなかったのかって? それは、私はこの測定装置を使わないからです。
と書くと、私の人間性を疑われそうなのでフォローしとくと、私がこのプログラムの
作成に直接はかかわらなかったのは、先輩方の配慮です。というのも、当時の私は研究室に所属した
ばかりで、とてもそんなことをやっている余裕がなかったからです。もちろん、できる限りの
アドバイスはしました。

> Emacs系とかのLispで拡張できるエディタって、そういうことできたかなあ。(???)

あの下のほうに表示されるメッセージペイン? に、cannaとかのIMEみたいに、
1. Echo 2. Quit 3.CreateObject 4.ScriptFullName ...
とか表示するようにすればいいのかな?

> Win2000SP2入れてみたら、OSが起動しなくなってしまいました。(爆)
>
> セーフモードで起動させようとしたら、4つめの
> WINNT\system32\config\system まで表示されて固まる…(汗)。

なんと。
ハードウェアの相性問題ですかね。

> 別のWin2000起動可能なハードディスクからブートしてサルベージさせるか…。

そんなことできるんですか?
私もはやくWin2000なLooxを入手しとくべきか。
# LooxS、なかなか安くならないね…。新モデルはいつ出る?


To: あんのうん さん

> oo4o+WSHのサンプルを作ってみました。

どうもありがとうございます。

データベースに実際に関わることがない私には、この手の話題は全然ついていけないので、
詳しい方のフォローにはいつも助けられています。

そういえば今年から、研究室の試薬管理をファイルメーカーproでやるという話があったな(^^;
これ、オートメーションで動かせるのだろうか?

ゆみ さん 2001年 05月 27日 18時 17分 28秒

はじめて、書き込みします。
今VBSでプログラムを作っているんですけど、
Set xl = Wscript.CreateObject("Excel.Application")
xl.Visible = True
Set book = xl.Workbooks.OpenText("c:\windows\temp\vbs\test.txt",,6)
カンマ区切りのテキストファイルを6行目からExcelで読みこみたいので、OpenTextメソッドではなく、OpenTextメソッドを使いたいのですが、実行するとオブジェクトがありませんとエラーメッセージが出てしまいます。どうしたらよいのでしょうか? よろしくお願いします。

あんのうん さん 2001年 05月 27日 04時 07分 52秒

↓、メモ帳から貼り付けたらインデントがなくなってしまいました。
見にくくてごめんなさい

あんのうん さん 2001年 05月 27日 04時 02分 49秒

いやー、皆さんのレベルとアイデアは
ほんとに凄くていつも参考にさせてもらっています。

>よしぞーさん
oo4o+WSHのサンプルを作ってみました。
oo4oはODBCより高速なので好きです。
インターフェースはHTAなんかを使うと
簡単にデータベースアプリが組めちゃいますね。


Option Explicit
'*****定数
Const C_ORACLE_TNS = "XX" 'Oracle接続文字列
Const C_ORACLE_USER = "XXX" 'OracleUser
Const C_ORACLE_PASS = "XXX" 'OraclePass
'*****変数
Dim bQuit
Dim OraSession,OraDatabase,OraDynaset,OraFields

On Error Resume Next
Err = 0
bQuit = FALSE
'*****1件だけ抽出
Set OraSession = CreateObject("OracleInProcServer.XOraSession")
Set OraDatabase = OraSession.OpenDatabase(C_ORACLE_TNS ,C_ORACLE_USER & "/" & C_ORACLE_PASS ,0)
Set OraDynaset = OraDatabase.CreateDynaset("SELECT NAME NAME FROM XXXX WHERE CD = 1",0)
Set OraFields = OraDynaset.Fields
If Err <> 0 Then
bQuit = TRUE
Else
MsgBox OraFields("NAME").value
End If
Set OraSession = Nothing
Set OraDatabase = Nothing
Set OraDynaset = Nothing
set OraFields = Nothing
On Error GoTo 0
If bQuit Then
WScript.Quit
End If

松島 さん (matsushima@popup.org) 2001年 05月 26日 20時 22分 54秒
URL:http://www.popup.org/ai/

Win2000SP2入れてみたら、OSが起動しなくなってしまいました。(爆)

セーフモードで起動させようとしたら、4つめの
WINNT\system32\config\system まで表示されて固まる…(汗)。

別のWin2000起動可能なハードディスクからブートしてサルベージさせるか…。

入れ方マズったかなあ…。

管理人むたぐち さん (mutaguchi@roy.hi-ho.ne.jp) 2001年 05月 26日 19時 05分 55秒
URL:http://www.roy.hi-ho.ne.jp/mutaguchi/

To: sato さん

> WSHでローカルにユーザを作成してアクセス権を与えたいのですが
> そのようなことが可能なのでしょうか?

ADSIを使えば可能です。
詳しくは過去記事を検索するか、リンクページからADSIに関するリンクを
張ってますのでそちらを参照してください。


To: ひろすけ さん

> 以前にActiveDirectryで構築しましたが、小規模なので
> メリットが無いと考え、workgroupに変更しました。
> この辺が災いしているのでしょうか?

おそらく、ワークグループだと、スクリプト実行時に全PCの情報を参照
しにいく必要があると思いますので、それで時間がかかるのでしょう。
ドメインを構築しておけば、そういう情報はドメインサーバーが
一元的に管理しますので、実行は速いと思います。
(というか、もともとADSIってのはActive Directory Service Interfaceの略で、
ADに特化された作りなので、AD環境では実用的な速度が出て当然ですね。
ま、アナログダイヤルアップ回線でVPNを介してドメインに参加するとか無謀な
ことをしない限りは(^^;)

> また、98などのどうしでのLANを形成している場合の
> コンピューター名の取得方向はありますか?(workgroup)

前回書いたとおり、shell32を使ってネットワークコンピュータ内にある
コンピュータ群の名前を取得するといいのでは?
Win98だと、ドメインでもワークグループでも、ネットワークコンピュータ
直下に接続中のコンピュータオブジェクトがあるので、スクリプトも簡単です。
(37-26で書いたのは、Win2000/MEでワークグループを構築している場合、各共有フォルダ名
までを取得するスクリプトです)

Const ssfNETWORK = 18
Set Shell = WScript.CreateObject("Shell.Application")

Set oFolder=Shell.NameSpace(ssfNETWORK)
For Each oComp In oFolder.Items
MsgBox oComp.Name
Next

> その時、VBSファイルを24H稼動させ特定の時間になると
> 自動ログインさせるソースを書いたのですが
> その私の考えた方法が非常に悪くサーバーに非常に負荷をかけてしまいました。
> うまい具わいにリアルタイムを取得する方法はありませんでしょうか?

ループ中で適当にWScript.Sleepを入れるといいのでは?
処理させる時間をそれほど厳密に決める必要がないのであれば、
WScript.Sleep 60000
のように毎ループ1分のスリープを設けるといいでしょう。
秒単位の厳密さが必要なら、スリープ時間を1秒にするといいでしょう。
(現時刻と次の処理時間の差を計算し、スリープ時間を動的に変化させれば
負荷をさらに減少できると思いますが、厳密さと信頼性に欠ける気がするので、
おすすめしません。やはり1分間隔くらいで監視しておいた方がいいです)

do
if 変数に入れた時刻(分単位)が現時刻と異なっている then
変数に現時刻を入れる
if 現時刻はn時0分である then
if 現時刻は0,6,12,18,9時のどれかである then
自動ログイン
end if
end if
end if
WScript.Sleep 60000 '次のループまで1分間待つ。
loop

とはいえ、このような処理自体を私はおすすめしません。
理由は37-05に書いたとおりです。
やはり、タスクスケジューラ/ATコマンドなどの機能を併用するのが
正しいソリューションだと思います。

松島 さん (matsushima@popup.org) 2001年 05月 26日 14時 09分 31秒
URL:http://www.popup.org/ai/

いつの間にかに、Windows2000SP2に「Japanese」が追加されてたんですね。
http://www.microsoft.com/windows2000/downloads/servicepacks/sp2/sp2lang.asp


亀レスになってしまいました。

To: いちにい さん

>> iアプリも、きっとそんな職人芸の世界なんだと思います。
>画面が小さいので、ゲームのキャラとか、大変そう。

ファミコン時代のドット絵やゲームボーイの画面とかを見ていると、
うまくデフォルメしたり省いたりしているのが分かります。


> 所で、Win98の起動ロゴって、何処で変えるんですか?

起動ドライブのルートディレクトリの LOGO.SYS です。


To: むたぐち さん

> プログラミングの経験が浅い人でも、とにかく「目的どおりに動く」アプリを
> 比較的容易に作ることができるというのは重要。

スパイラルモデルで開発しやすいのがメリットの一つだと思うんですが、
延々と「作る→レビュー→仕様追加/変更」をしているうちに、予算と納期を
大幅にオーバー、という落ちを作る土壌となりがちなのがデメリット。

#というか、じっくり仕様を作ろう…。


To: AKiOS さん

>>>> 転じて、コンパイル系の言語のみをプログラム言語と呼ぶ流れがあります。(これにはちょっと疑問)
>>> どういう流れなんでしょう? (^^;
>> 更に飛躍して、「スクリプトはプログラム言語ではない」と主張している方もいらっしゃるんですよ。
>あらら、はぐらかされてしまいました。(^^;
>ちなみに、その「スクリプト」とはスクリプト言語のことなのか、シェルスクリプト
>のことなのか、はっきりしないですね。

「スクリプト言語」の方です。

えと、「プログラム言語」の言葉の指す範囲が非常に狭い人もいるということです。

># 「VBはビジュアル開発ツールだ。あんなものをプログラミング言語と呼ぶのは
># 羊頭狗肉」という意見には賛同しますけどね。

GUIなIDEの仕様と、CUIで書いていくロジックな言語仕様とは、区別して捉えたいです。
(でないと中で何が起こっているのか見えなくなってしまって…^^;)

>>> バッチはもともとは、「手続き型処理」に対する「一括処理」を指す言葉だったと思います。
>> リアルタイム処理に対するのがバッチ処理なのでは?
>リアルタイム処理←→バッチ処理
>手続き型言語←→宣言型言語
>らしいです。

あぁっ、すみません。大嘘書き込んでしまいました。
#というか、ごちゃ混ぜ…(汗)。

バッチ …… 銀行系で夜中にゴリゴリやってるヤツ

っていうのが頭にあって(^^;;


To: むたぐち さん

>ただ、補完機能となると、これは外部から実現するのは難しそうです。
>やはり、エディタ自体に対応してもらわなければ…。
># そういう機能があるエディタってあります?

Emacs系とかのLispで拡張できるエディタって、そういうことできたかなあ。(???)

>マークシートでBASICの問題を出すのがそもそも無茶なんですが、
>コンピュータにやらせることを人間がやってどうするんだろうか。

計算力を確認しているんでしょう…。

創造力、応用力、適応力、表現力などを軽視しているから、
二次方程式の概念を理解できない子を「頭の悪い子(=計算力のない子)」
なんて言うんですよね…。

#自分を表現するすべを知らないからすぐキレるし、言葉が日本語になってないし。

>BASICを教えるより先にネチケットを教えるべきだと思うんですが。
>時代に即した教育をやらなきゃ、ね。

道徳の授業ですね。
チェーンメールすんなー! とか。(携帯電話で多い。^^;)

>> 私の「お気に入り」には意図的にタイトルを変更しているものが複数あるのですが、
>> ひっかからなかったものもありました。
>キャッシュに残ってない場合はリネームしない仕様(タイトルを取得するためだけ
>にそのページをダウンロードするのも馬鹿馬鹿しいのでやってません)ですが、
>そのせいじゃないでしょうか。

なるほど、キャッシュの情報から更新していたのですね。納得。

土屋 さん 2001年 05月 26日 06時 28分 40秒

◆よしぞーさん
Oracleとの接続の場合は、高橋さんのおっしゃるとおり、ODBC接続でやれば、他のデータベースと同じ感じでデータの取得ができると思います。
もしも、ODBCの設定が面倒(WSHを使ってレジストリをいじるとなんとかなるかもしれませんが)で、Oracleといえばoo4oという場合は、oo4oをWSHから直接操作するのはどうでしょうか。
(Oracleやoo4oなんて使ったことがなくて言ってるんですが)

DBName = "databasename"
QL = "select * from tablename"
Conn = "userID/Pass"

Set OSession = CreateObject("OracleInProcServer.XOraSession")
Set ODatabase = OSession.OpenDatabase(DBName, Conn, 0&)
Set ODynaset = ODatabase.DbCreateDynaset(QL, 0&)

こんな感じでOracleのデータベースに接続して以下の処理を展開するか、最後の行のかわりに、
RC = ODatabase.DbExecuteSQL("update 〜以下略
という感じでSQLを単独で実行してしまうことが可能ではないでしょうか。

何分、縁がないソフトで推定モード(綴りが正しいかどうかもわかりません)で
すみませんが、こういう方向性がうまくいけば、かなり快適にOracleのデータベー
スの取得や修正がWSHからできるのではと思います。

よしぞー さん 2001年 05月 25日 11時 30分 54秒

高橋さん、ありがとうございました。
霧が少し晴れました(^^ゞ

今はまだExcel等でマクロを記述しながら操作をして、それをコピーする形でスクリプトのファイルを作っているような状態です。同じ処理でもマクロのVBSとWSHでの記述のしかたが若干違うようで、四苦八苦しております。

これからまだまだ勉強していくつもりです。
また何かありましたらご支援よろしくお願いします。
ありがとうございました。

mami さん 2001年 05月 25日 10時 19分 23秒

高橋さん、はじめまして。
アドバイスありがとうございます。
いつも説明が下手で、皆に迷惑をかけてしまっていて。
気をつけます。
また何かありましたら教えてください。
宜しくお願いします。

高橋 さん 2001年 05月 25日 00時 49分 23秒

高橋@みなさま覚えていらっしゃるでしょうか、です。

相変わらずASPの開発しております、あ〜Javaがやりたい。(笑)
最近はほとんどWSHは触ってないです。もっぱらbashのスクリプト
書いたりPerlばっかりです。

>よしぞー さん
はじめまして
>DB(Oracle)からのデータの取得については環境もなく、確
>認できていません。
>
もちろんできますよ。環境が書かれていないので詳細が分かりませんが、
ODBCを使えば、VBとほとんど同じコードで動かせるはずです。
Oracle + WSH は経験ありませんが、SQL Server(6.5, 7.0) + WSH の
組み合わせではバッチ処理等でよくやっていましたよ。

>WSHとはどのぐらいのことができるのでしょう?
>
こちら(むたぐちさん)のページを見れば、相当のことが出来るのが実感で
きると思いますよ。

>VBを買えばいいことなのですが、なにせWSHならタダなもので(^^ゞ
>
Oracleのほうがとんでもないお値段のような気が…(汗)


>mami さん
はじめまして。

>WSHやVBSって何ですか?(きゃぁ〜、怒らないでください)
>
WSH -> Windows Script(ing) Host
VBS -> VB Script
です。
確かこのへんは、むたぐちさんが詳細に書かれていたような気がします。
過去ログを検索してみましょう。

>IE5.5 SP1でファイルのダウンロードをするとき
>
すみません、質問の意図が良く分かりませんでした。
http://homepage2.nifty.com/winfaq/w2k/
で聞かれてみるといいかもしれませんね。
OS別にページが分かれているので、注意して下さい。
あと、環境・状況をきっちり書かないとレスが付きにくいと思いますよ。
ご参考までに。

管理人むたぐち さん (mutaguchi@roy.hi-ho.ne.jp) 2001年 05月 24日 22時 45分 26秒
URL:http://www.roy.hi-ho.ne.jp/mutaguchi/

○Win2000sp2

Win9x互換モードが使えるようになるらしいですね。
http://www.microsoft.com/JAPAN/support/kb/articles/JP279/7/92.htm


○ADSL導入記

・3月頃
家族のインターネット使用頻度が増し、電話料金がえらいことになり出した。(大台を越えた…)
そこで、
1. テレホーダイでしのぐ。
2. CATVインターネットに加入。
3. なんとかという64kbps無線インターネットPCカードを使う。
4. ADSL。光ファイバー化が進んだときのことはとりあえず考えないでおく。
という改善案が出された。
1.は時間限定、電話との共用ができないということで却下。
2.はそもそも家に来ているCATVが、インターネット未対応(と言っても、CATV会社自体は接続サービスを
やっているのだが)だったことが判明し、却下。(それ以前に、ケーブルモデムがWin2000未対応、
複数台同時接続するには追加料金が必要、工事が面倒などの問題多数だったのですが)
3. は、値段と速度が見合ってない、台数分購入しないといけない、等の理由で却下。
で、結局4.を採用した。
(Dive-Masterさんところの掲示板でご意見をうかがい、参考にさせていただきました。
ご協力ありがとうございました。> Dive-Masterさん & ご意見をいただいた方々)

個人向けADSL接続サービスとしては、
1. NTT東/西日本の「フレッツADSL」
2. e-Accessが仲介するプロバイダのADSLコース(と言っても、NTT東/西日本の回線を
使うのはフレッツと同じだが)
3. 大阪めたりっく(東京めたりっくの関西支部?)
が利用可能であった。1. 2. については、今年三月、NTT西日本のADSLサービス対象地域に
なったのだが、3.に関してはまだ「サービス予定地域」であったため、却下。
1.のフレッツは、複数台同時接続が不可であるということもあり、却下。
2.の場合、e-Accessが貸し出すモデムが、いわゆるNAT・DHCPサーバの
機能を持つルータタイプ(USBタイプもあるが)であり、複数台同時接続が
可能であるという理由で2.を採用。
プロバイダごとにサービス形態が違い、いろいろ選べるのだが、
ここはやっぱり慣れ親しんだ?Hi-HOの「まとめてADSLコース」を選択した。
Hi-HOにするメリットの一つに、「掲示板のCGIとAKiOSさんの掲示板記事検索スクリプトと
過去記事という既存の資産が無駄にならない」ということがある。
ただし、ダイヤルアップ接続サービスからADSLコースへのコース変更はできないため、
新規加入扱いとなる。(が、実はこの1ヶ月で事情が変わった。詳しくは後ほど)
という具合に、Hi-HOのまとめてADSLコースに加入することが(半)決定した。

・3月下旬〜4月
各部屋にPCが分散しているので、LANを構築する際、部屋越えが必要となる。
方法としては、
1.無線LAN
2.単に廊下にLANケーブルを這わす
3.モジュラーケーブルの配管を利用してLANケーブルを通す(各部屋にモジュラージャックは
あるのだが、これは当然使えない。先見の明があったようで実はなかったのでありました。まあ、
1998年当時、現在の通信事情を読むのは無理と言うものです。というか、うち、いわゆる震災
復興マンションだし、そこまで考える余裕はなかったという言い訳も可能。これから家を建てる方は、
あらかじめLANケーブルを引き回しておいた方がいいですよ。少なくとも配管工事だけは
やっておくことを強くお勧めします。うちの場合、たしかにモジュラーケーブルを引いてしまったのは
失敗でしたが、配管は利用できるのでLANケーブルへの交換が比較的簡単な工事で済むという
のはラッキーでした。う、余談長すぎ)
1.は費用がかかる割に、最高速度が10Mbps強ということで却下。そりゃ、ADSLの理論最速速度1.5Mbpsは
余裕でカバーしてるが、せっかく家庭内LANを構築するからには100Base/Tで組みたいので。
2.は外見が美しくないという理由で却下(された。贅沢な…)。
というわけで、3.を選択。
その工事をどこにやってもらうかで、Hi-HOやNTT西日本に問い合わせたが、要領を得ない。
(というか、NTT西日本の人、LANと言われて、はあ?、じゃだめでしょ。)
まあ、配管がどうたら、という話が通じないのも無理はない。そこで、電話帳を繰って自分で
探すことにした(というか、家族に探させた。今思えばWWWで探せよ、って話だが)。
結局、「電話工事」のカテゴリにあった業者に頼むことにした。
とりあえず、現状を説明するために説明員の人に来てもらったのだが、例の管にLANケーブル*2
モジュラーケーブル*1を通すのは無理だと思うと言われ、風呂場の上の空間にモデムとハブを
設置してそこから各部屋に分配するとかの奇妙な案を出してみたりした(^^; (湿気があるから問題外…)
結局、例の管にはLANケーブル3本分のスペースがあることが後日判明したので、利用することにした。
費用を見積もりしてもらったが、無線LAN導入とあまり変わらんような気もする額だったがまあいいや。
ちなみに、この業者は大阪めたりっくの子会社で、加入を勧められた(^^;

・5月14日
いろいろあって、Hi-HOへの申し込みはこの日になった。(郵送)

・5月某日
しばらくして申し込み受理のはがきがHi-HOから来た。続いてe-Accessから「申込者と
電話回線の名義人が違う」という連絡があり、変更の手続きをNTTに。

・5月23日
e-Accessから回線適合通知と回線開通予定日(5/30)の連絡。
当初、開通まで1ヶ月と言われていたのでその早さに驚き。

・5月24日
ADSLモデム到着。というか、まさか宅急便で来るとは思わなんだ。
付属マニュアルを読んだところ、自分で取り付け可能(というか、Webブラウザでモデムの設定ができる
ようです)っぽいので、e-Accessに取り付け工事取り消しの連絡をした(依頼すると1万3000円も
取られるのです。OSインストールサービス、という言葉が頭をよぎったり)。

その後、Hi-HOのWebサイトを見ていると、なんと、つい最近、ダイヤルアップ接続からADSLコースへの
コース変更が可能になったらしい。それならそうと言って欲しかった(無理言うな)。
コース変更の場合、個人WebサイトのURLとメールアドレスが継続して使えるので、こちらとしては
特に移行措置も必要なく、このページにお越しの皆様にお気に入りの変更を強いることもなく、
リンク変更をお願いする手間も省け、Googleランクも落とさずに済む、といういいことずくめ
だったのに。
ここはダメ元でHi-HOにお願いしてみる。
すると、今からコース変更に変更することはできないが、ADSLコースで提供されるメールアドレスを
ダイヤルアップで今まで使っていたメールアドレスに変更するという、なかなか機転の利いた
措置を施してもらえることになり、事実上今までのメールアドレス・URLを引き続き使用できる
こととなった。ありがたい。

・5月30日
ADSL回線開通予定日。
とりあえず、スプリッタ、ADSLモデム、LANポートつきノートPC(ThinkPad)をつないで
モデム設定&動作確認する。
(ここでもしダメなら、キャンセルというパスもまだ残っている)
Hi-HOに開通確認の連絡を入れる。(というのも、メールアドレス移行に関することで、
通常は必要ない連絡であるが)
Hi-HOのダイヤルアップ接続を解約する(Web上で)。
実はこの週、私は(本業で)めちゃくちゃ忙しいのであるが、そうも言っていられないのです。

・6月3日
休みを利用して必要な機材購入。
とりあえず、LANケーブル数本、10/100Base/Tなハブ*2、10/100Base/TなLANカード(PCカード)*2
が要る。

・6月初旬
LANケーブル敷設工事。
各PCのネットワーク設定。

で、ようやく利用可能になる予定。
それにしてもなんて遠大な計画であったことよ。
全然知識のない家族たちにこの壮大な計画を理解させ、推進させた私の苦労は
報われるのだろうか。


とりあえずみなさまに業務連絡。
・たぶん当ページのURLは変わることはありません。
・私のメールアドレスもたぶんそのままです。
・5/30から6月初旬まで、私はこの掲示板で返信できませんが、
みなさまは通常どおりお使いいただけます。
といっても、私はどこかから見ていますのでそのつもりで(^^;
・上記の期間、私にメールを送っていただいた場合、大学の方に
転送されますので通常どおり読むことができます。

あと、掲示板の返信ですが、先ほども書いたとおり今週来週は多忙なので
もしかするとそのまま6月まで…という可能性もあるのでご了承ください。
っていうか、忙しいならこんな長文かくなよってツッコミが来そうな。
(これは備忘録もかねているのでいいのだ、と自分を納得させている(^^;
さ、仕事やろっと)

よしぞー さん 2001年 05月 24日 19時 14分 29秒

こんにちは。
現在、イントラ上でファイルのダウンロードをする仕組みを考えています。
このファイルはExcelブックなどを想定していて、ブラウザ側の要求内容によりサーバ上でDBからデータを取得し、ファイルにデータを埋め込んだ形でダウンロードできるようにしたいと思っています。

このサーバ上の処理をWSHで行いたいと考えているのですが、可能なものでしょうか?
Excelへの書き込みは可能であることは確認できていますが、DB(Oracle)からのデータの取得については環境もなく、確認できていません。

御教授よろしくお願いいたします。

PS
WSHとはどのぐらいのことができるのでしょう?(ヘルプを見てもよくわかりませんでした(^^ゞ)
VBでフォームを使わないで作るのと一緒と考えてもいいのでしょうか?
ちょっと無茶な考えですか?
VBを買えばいいことなのですが、なにせWSHならタダなもので(^^ゞ

mami さん 2001年 05月 24日 11時 51分 22秒

こんにちは。
こちらで質問してよい内容かどうかわからないのですが
ご存知でしたら教えてください。

IE5.5 SP1でファイルのダウンロードをするとき
指定したファイルではなく、
表示しているhtmlファイルがダウンロードされてしまいます。
「開く」ボタンを押した後(画面には表示されませんが)
「保存」としてダウンロードすると正常にファイルを取得できます。
IEの設定があるのですか。

ところで、大変失礼&恥ずかしい質問なのですが
WSHやVBSって何ですか?(きゃぁ〜、怒らないでください)

宜しくお願いします。

いちにい さん 2001年 05月 23日 17時 40分 12秒

● 管理人むたぐちさん

> IE5も、度重なるバージョンアップでずいぶん良くなってきたのですよ。

ん〜。
それでも怖い。 <トラウマ?(笑)
家のは、PC98なんで、OSの再セットアップに至ると大変なんですよ。
(Win98アップデートにパッチ当てたり。)
しかも、HDDを圧縮掛けて、何とか容量を稼いでる始末。(笑)
圧縮に、20時間掛かりました。(死)
元の環境に戻せればいいんですけどね。
でも、そろそろ、クリーンSETUPしたい頃でもある。


> ないですねえ。メジャーバージョンが違うから参考にならないかもしれませんが。

解決しました。
と言うか、解決してくれました。(笑)
EmEditor Ver3.14だけの症状のようです。
Ver3.14では、「ツールバーの非表示」→「表示」か、「プラグインの設定」を実行
するたびに、ツールバーが増えてました。
どうも、古いツールバーを破棄できていなかったみたいで。
Ver3.15で、直ってます。


> なんか脱力…。

そう言う季節です。(謎?)


所で、VBでも、EmEditorみたく、箱形選択が出来るはずなんですけど、
家のVB5じゃあ出来ません。
何故?
むたぐちさんのVBで、出来ます?



● 土屋さん

> Suganoさんという方のExcel VBAのサイト
> http://plaza14.mbn.or.jp/~sunago/
> のAdd-inライブラリにVBEでWSHスクリプトを作るための開発支援環境を提供するというAdd-inが
> 公開されていました。(でも使ったことありませんが)

DLしてみました。(笑)
WSHの参照設定と、作成したスクリプトコードを、拡張子VBSでエクスポートするメニューを、
追加するアドインでした。
保存したスクリプトを実行するマクロ等もあったけど、どうしてメニューに追加してないのかな?



> たまったスクリプトはAccessで一応管理してしているのですが、テキストファイル読み込み機能
> をつけたらおもしろくなって、テキストファイルと判断できるものはなんでもかんでもインポー
> トしてしまったので、結局持ち運び不便な容量になってしまった。
> どうも性格は全然管理できていないらしい。

自分の場合は、Access持って無いし、知らないので、Think Bookと言うソフト使ってます。
エクスプローラ風のUIで、テキストを管理するツールです。(シェア)
家の場合は、言語毎に分けて、更にカテゴリ毎に保存してます。

↓こんな感じで、分けてる。

関数


┣━ファイル

┣━キーボード

┣━コントロール
┃ ┃
┃ ┣━汎用
┃ ┃
┃ ┣━ボタン

Tipsとか、皆さん、どうやって管理してますか?


ひろすけ さん 2001年 05月 23日 17時 09分 41秒

追伸:

先ほどサーバーからクライアントのユーザー名が取得できました。
と報告しましたが、間違えでした。

取得できたのはクライアントマシンのW98にて当ファイルを実行した時
でした。そのクライアントはサーバーでadmin権限を持っていたので
クライアントでファイルを実行し、MSGBOXはサーバー側で表示された
ようです。

ふじい さん 2001年 05月 23日 15時 33分 02秒

To むたぐちさん

あまり有名じゃない業務アプリケーションだったものですから。
今回VBSを試行錯誤してみて、結構便利に利用出来そうなのが分かりました。
バッチファイルなら経験ありなんですが、スクリプトは全く初心者です。
これから、ぼちぼち勉強したいと思います。

ひろすけ さん (kanbara@care-smile.co.jp) 2001年 05月 23日 11時 59分 10秒

To むたぐちさん

ご連絡ありがとうございます。
今確認したところ、コンピューター名は取得できました。
しかし、非常に取得に時間がかかりました。
現在、私はW2000serverでworkgroupでNetWorkを構築しています。
以前にActiveDirectryで構築しましたが、小規模なので
メリットが無いと考え、workgroupに変更しました。
この辺が災いしているのでしょうか?
また、98などのどうしでのLANを形成している場合の
コンピューター名の取得方向はありますか?(workgroup)

また、別の質問なのですが
以前に自動ログインの方法の質問を投稿しました。
その時、VBSファイルを24H稼動させ特定の時間になると
自動ログインさせるソースを書いたのですが
その私の考えた方法が非常に悪くサーバーに非常に負荷をかけてしまいました。
うまい具わいにリアルタイムを取得する方法はありませんでしょうか?
下記にわたしの書いた時間の取得を記入しておきます。
笑わないでください。

Do
hizuke=CStr(date)
jikan=CStr(time)

Select Case jikan
Case "0:00:00":Call DelFiles
Case "6:00:00":Call DelFiles
Case "12:00:00":Call DelFiles
Case "18:00:00":Call DelFiles
Case "9:00:00":Call RestartPC
End Select
Loop

sato さん 2001年 05月 23日 10時 49分 47秒

こんにちは。お久しぶりです。
早速ですが、質問があります。

WSHでローカルにユーザを作成してアクセス権を与えたいのですが
そのようなことが可能なのでしょうか?

もしもできるようならどのようにしてやるのでしょうか?
どなたか教えてください。

管理人むたぐち さん (mutaguchi@roy.hi-ho.ne.jp) 2001年 05月 23日 02時 29分 27秒
URL:http://www.roy.hi-ho.ne.jp/mutaguchi/

To: 土屋 さん

> AccessのDoCmd.TransferSpreadsheetあたりを使えば、WSHから実現できそうですね。
>
> もしもExcelもWSHから操作していいのであれば、Accessでレコードセットを作って、CopyFromRecordsetでExcelのワークシートに貼り付けてしまう、なんてこともできるかも。

貴重なご回答ありがとうございます。
COMのよさを実感する瞬間、ですね。

> Suganoさんという方のExcel VBAのサイト
> http://plaza14.mbn.or.jp/~sunago/
> のAdd-inライブラリにVBEでWSHスクリプトを作るための開発支援環境を提供するというAdd-inが公開されていました。(でも使ったことありませんが)

そんなのがあるんですね。
今度見てみます。

> 個人的には、WSHスクリプト作成の際は、WZ EditorでVB関連の用語を色分けするように設定して(事前準備が必要ですが)、それくらいで満足してます。

私もEmEditorの単語色分けで十分です。
(色分け定義ファイルを公開中です
http://www.roy.hi-ho.ne.jp/mutaguchi/wsh/vbs.lzh)

1.自動インデントができること
2.キーワードを強調表示できること
3.保存したスクリプトファイルをエディタから実行できること
4.行数、桁数が表示できること

これが基本ですね、やっぱり。

> たまったスクリプトはAccessで一応管理してしているのですが、テキストファイル読み込み機能をつけたらおもしろくなって、テキストファイルと判断できるものはなんでもかんでもインポートしてしまったので、結局持ち運び不便な容量になってしまった。

Accessってそうやって使うものなのか!


To: ふじい さん

> Q:オートメーションメソッドに付いて
>
> VBS初挑戦中で、苦労しています。
> あるアプリケーションで提供されているオートメーションメソッドをVBSから
> 操作しています。

自己解決されたようなのですが、その「あるアプリケーション」が何かわからない
私たちにとってみては、結局何がなにやらさっぱりわからないままなのです(^^;
アプリ依存の現象は、そのアプリの名前を出していただかないことには、どうにも
なりません。(それで答えられるかどうかは別の話ですが)
次からはよろしくお願いします。


To: ひろすけ さん

> この時、各クライアントのコンピュータ名を取得し、現在接続中のクライアントの
> パスにそのファイル(A.txt)が存在するかどうか確認し、
> もし存在すれば上書きをし存在しなければ
> コピーしない。
>
> <知りたいのは>
> 現在接続中のクライアントの名前の取得方法と
> コンピュータ名を含めたパスの表示方法です。
>
> 例えば コンピュータ名がhiroなら
> そのパスは(\\hiro\c\test\a.txt)など
> これの正確なパスの表示方法です。

Win2000ということであれば、ADSIを使えばクライアントのコンピュータ名は取得できると
思います。Active Directoryを構築している場合と、NTドメインの場合で
コードが違いますが、NTドメインの場合は次のようになります。

Set adsDomain = GetObject("WinNT://domainName")
adsDomain.Filter=Array("computer")
For Each Comp In adsDomain
MsgBox comp.name
Next

ただし、もしかすると各Win95,98のクライアントにADSIコアモジュールをインストール
する必要があったかもしれません。(詳細不明)
まあ、Win2000Serverでスクリプトを動作させるなら問題ないと思いますが。

ADSIを使う場合、わかるのは各クライアントのコンピュータ名にとどまるので、
(いや、ADSIで共有フォルダのパスを取得する方法があるのかもしれませんが、
少なくとも非AD環境では無理な気がする)
共有フォルダのパスが固定であるか既知である必要があります。
たとえば、\\コンピュータ名\c\test\a.txtというパスで統一されているなら、
コンピュータ名だけを取得すればいいので、ADSIだけで完結します。

もしそうでない場合は、WMIをADSIと併用するといいと思います。
(この場合、各クライアントにWMIコアモジュールのインストールが必要)
詳しくはhttp://www.roy.hi-ho.ne.jp/mutaguchi/wsh/src/share.lzhとか
この掲示板の過去記事
28-46 管理人むたぐち 2001/01/21 20:41
28-28 管理人むたぐち 2001/01/16 01:13
とかが参考になると思いますが、ちょっと大掛かりなスクリプトになりそうです。
これで、各クライアントの共有フォルダのパスが取得できると思います。

いちばん簡単なのは、shell32を使う方法ですね。
以下は、ワークグループの場合の参考例になりますが。

Const ssfNETWORK = 18
Set Shell = WScript.CreateObject("Shell.Application")

Set oFolder=Shell.NameSpace(ssfNETWORK)
For Each oComp In oFolder.Items.Item("ネットワーク全体").GetFolder.Items.Item(0).GetFolder.Items.Item(0).GetFolder.Items
For Each oShare In oComp.GetFolder.Items
Msgbox oShare.Path
Next
Next

…というか、ぜんぜん簡単じゃないですね(^^;
美しくないし。ま、参考程度と言うことで。

とにかく、何らかの方法で共有フォルダのパスが得られたら、あとは普通にFileSystemObjectの
FileExistsメソッドでファイル存在を確認し、CopyFileメソッドとかを使ってファイルを
コピーしてやればいいでしょう。というのも、FileSystemObjectは、ネットワークなパスを
サポートしているので、ローカルの場合と同様のコードで記述が可能です。

ふじい さん 2001年 05月 22日 17時 26分 05秒

Q:オートメーションメソッドに付いて
自己レスです。

ウインドウは開くだけでなく、選択するメソッドを実行しないといけない
仕様のようでした。
う〜ん、でも納得いかないな。

ひろすけ さん 2001年 05月 22日 16時 29分 28秒

非常にご迷惑をかけました。
半角カタカナは使用してはいけないルールでした。

盆O整名→コンピューター名です。


さん (kanbara@care-smile.co.jp) 2001年 05月 22日 16時 27分 14秒

すみません。先ほどの質問に誤字がありました。

盆O整名→際盆O整名

です。すみません。

ひろすけ さん (kanbara@care-smile.co.jp) 2001年 05月 22日 16時 24分 55秒

いつもありがとうございます。ひろすけといいます。
下記の処理をしたいのですが、WSHで実行可能かどうかと、
そのソースの記述方法を教えて下さい。

<したいこと>
Windows2000Serverにあるファイル名(A.txt)を
LANで接続してあるクライアント(Windos95/98)5〜6台
の特定のパスにコピーする

この時、各クライアントの際盆O整名を取得し、現在接続中のクライアントの
パスにそのファイル(A.txt)が存在するかどうか確認し、
もし存在すれば上書きをし存在しなければ
コピーしない。

<知りたいのは>
現在接続中のクライアントの名前の取得方法と
際盆O整名を含めたパスの表示方法です。

例えば 際盆O整名がhiroなら
そのパスは(\\hiro\c\test\a.txt)など
これの正確なパスの表示方法です。

宜しくお願いします。

ふじい さん (GFE00400@nifty.com) 2001年 05月 22日 15時 12分 56秒

Q:オートメーションメソッドに付いて

VBS初挑戦中で、苦労しています。
あるアプリケーションで提供されているオートメーションメソッドをVBSから
操作しています。
【現象】
ウインドウを表示するオートメーションメソッドを実行させるのですが、
一瞬該当ウインドウが表示されるだけで、消えてしまいます。
ウインドウ表示の後ろにメッセージボックスで何かメッセージを表示さ
せていると該当ウインドウは開いたままで表示され、メッセージボック
スを閉じても、ウインドウは開いています。

メッセージボックスなしで、ウインドウを開いたままにする方法は無い
でしょうか?
ご教授のほど、よろしくお願いします。

土屋 さん (null) 2001年 05月 22日 05時 45分 21秒
URL:null

To: クリシュナ さん

> 「AccessからExcel形式で保存する」
> ということをWSHで記述することは可能でしょうか。

AccessのDoCmd.TransferSpreadsheetあたりを使えば、WSHから実現できそうですね。

もしもExcelもWSHから操作していいのであれば、Accessでレコードセットを作って、CopyFromRecordsetでExcelのワークシートに貼り付けてしまう、なんてこともできるかも。

To: WSHエディタ関連の話題

Suganoさんという方のExcel VBAのサイト
http://plaza14.mbn.or.jp/~sunago/
のAdd-inライブラリにVBEでWSHスクリプトを作るための開発支援環境を提供するというAdd-inが公開されていました。(でも使ったことありませんが)

個人的には、WSHスクリプト作成の際は、WZ EditorでVB関連の用語を色分けするように設定して(事前準備が必要ですが)、それくらいで満足してます。
Tera Pad(だったかな?)というエディタにVB関連用語を色分けする機能がもともとあったと思います。(でも色分けだけだとニーズに答えていないのかなあ)

たまったスクリプトはAccessで一応管理してしているのですが、テキストファイル読み込み機能をつけたらおもしろくなって、テキストファイルと判断できるものはなんでもかんでもインポートしてしまったので、結局持ち運び不便な容量になってしまった。
どうも性格は全然管理できていないらしい。

てっぺ さん 2001年 05月 22日 02時 34分 19秒

管理人むたぐちさん

ありがとうございます。AutoItXというので
できそうです。



管理人むたぐち さん (mutaguchi@roy.hi-ho.ne.jp) 2001年 05月 22日 00時 04分 03秒
URL:http://www.roy.hi-ho.ne.jp/mutaguchi/

最近のfj.news.usage、なんか凄いです。
2chとかのほうが、よっぽどまともなんじゃないかという気がしてきます(^^;


To: いちにい さん

> 便利そうだけど、家の環境で動かないのが悲しい。
> でも、IE5入れて、またおかしくなるの嫌だしなぁ。

IE5も、度重なるバージョンアップでずいぶん良くなってきたのですよ。
初期バージョンは本当に悲惨でした(さながらWin95にIE4初期バージョンをシェル統合したときを
髣髴とさせるさまざまな不具合に見舞われました)が、その1ヵ月後に出た修正版では
シェルが異常に重くなる不具合が解消され、IE5.01、sp1、sp2というバージョンアップ
でかなりバランスの取れたブラウザになりました。
(それに対してIE5.5系はまだ駄目かも知れません。IE6は論外ですけど(^^;)

> EmEditor側の妙な現象のため、場合によっては、再実行の必要が。
> むたぐちさんのバージョンでは、「ツールバーの非表示」を実行すると、
> ツールバーの跡が残って、垂直スクロールバーの[▲]ボタンが、
> 消えたり、ウインドウを最小化すると、ツールバーのボタンがエディット
> 部分に出てきたりしませんか?(ツールバーが増えてる。)

ないですねえ。メジャーバージョンが違うから参考にならないかもしれませんが。

> > あれ、なんか今日の返信はあっさり風味。
>
> その方がスキです。(笑)

あれ。そうなんですか。
なんか脱力…。


To: てっぺ さん

> WSHでアプリのウインドウの中の指定したところを
> クリックすることはできるのでしょうか?

そういうことができるCOMコンポーネントを使ってみてはいかがでしょうか。
リンクのページにいくつか紹介してます。


To: クリシュナ さん

> 「AccessからExcel形式で保存する」
> ということをWSHで記述することは可能でしょうか。

もともとAccessにExcel形式で出力する機能があるなら、可能かもしれません。
その上で、AccessのオブジェクトモデルをMSDNなり、オブジェクト
ブラウザなりで調べてみるといいでしょう。

クリシュナ さん 2001年 05月 21日 16時 04分 12秒

はじめまして。
少しお聞きしたいことがあるのですが、
「AccessからExcel形式で保存する」
ということをWSHで記述することは可能でしょうか。
可能であれば、教えていただきたいのですが。

てっぺ さん 2001年 05月 21日 05時 56分 03秒

WSHでアプリのウインドウの中の指定したところを
クリックすることはできるのでしょうか?

いままではctrl+aで押してたボタンが
ソフトのバージョンアップでできなくなって
しまいました。(どうしてなくしちゃったんだろうWME7.1・・・
タブもtab+ctrlで動かないし・・・)

いろいろいじってみて、押したいボタンにマウスのボタンを
クリックしてそのままボタンの外に動かしてマウスのボタンを
離すと、押したいボタンの内側に点線がでますよね?
その状態のときにスペースを押すとぽちっと
押されるのですが、
その内側に点線がつく状態にする方法がわかりません・・・。

この方法はどう?という方
おしえてください。

おねがいします。

いちにい さん (petmail_@orihime.net) 2001年 05月 19日 17時 40分 13秒

● 管理人むたぐちさん

> 今回のバージョンアップの目玉は、記事参照番号がクリッカブルになった点です。

便利そうだけど、家の環境で動かないのが悲しい。
でも、IE5入れて、またおかしくなるの嫌だしなぁ。


>> 因みに、例のエディタの方は、VBSのサンプルと、テンプレートを残して、
>> アンインストールしちゃいました。

> あらま。日本人の使用者数激減ですね。(たぶん5人くらいしか使ってないでしょうから)

そんに少ないんですか?
って、何故消したのに、丸ごと残ってた。(笑)
インストーラがおかしい?


>> # EmEditorのツールバーが折り返しじゃないのが使いにくいっす。

> ん、プラグインを大量に入れない限り、折り返すほどのボタンはないと
> 思うんですが…。

大漁です。(釣り?笑)
こりゃ便利そう、って感じで20ヶくらいDLしちゃって、ホイホイ入れたら、
あっという間に、画面からはみ出しちゃって。(笑)
でも、まだ1サイト分しかDLしてないんで、これから増える予定。
で、プラグインの作り方ページが有ったので、それを参考にして、
ツールバーの折り返し設定プラグインを作ってみました。
(と言うか、c初心者なので、コレしか出来ないと言う噂も・・・。笑)
取り敢えず、全ボタンが表示されてご機嫌?

が、しかし・・・。(又だよ。 笑)
EmEditor側の妙な現象のため、場合によっては、再実行の必要が。
むたぐちさんのバージョンでは、「ツールバーの非表示」を実行すると、
ツールバーの跡が残って、垂直スクロールバーの[▲]ボタンが、
消えたり、ウインドウを最小化すると、ツールバーのボタンがエディット
部分に出てきたりしませんか?(ツールバーが増えてる。)



>> 宣言した変数名の列挙とかなら、プラグインで無いですかね?

> ないものは作る、が鉄則。
> よろしく。(おい)

自分には、無理です。
他のベテランPGにお願いして下さい。(笑)
あのプラグインが、VBでも行ければ、変数名の列挙くらいなら行けそうですが。


> 一応、リンクのページにいろいろ紹介してますが、どれも決め手に欠ける、かも。
> 私はEmEditor ver.2で十分ですが。

そうですか。
なら、他の見るのは、気が向いた時にしときます。
と言うか、最初に試したエディタが高機能すぎた。(笑)


> あれ、なんか今日の返信はあっさり風味。

その方がスキです。(笑)


管理人むたぐち さん (mutaguchi@roy.hi-ho.ne.jp) 2001年 05月 18日 22時 07分 11秒
URL:http://www.roy.hi-ho.ne.jp/mutaguchi/

AKiOSさんのWSH Lab.掲示板記事検索スクリプトがバージョンアップしました。
今回のバージョンアップの目玉は、記事参照番号がクリッカブルになった点です。
とても便利なので、みなさんもぜひお使いください。

//////test用
1-1 ←私の初書き込み。37-13 ←一つ前の記事


To: 梨 さん

> たむぐちさん、ありがとうございました。

うう、またまた間違われた(^^;

> HPでいろいろ探したのですが、見つからず困っていたので
> 助かりました。

うちのLessonで取り上げたいことの一つだったりします。
ああ、時間と気力を私に。


To: Kenji Yamamoto さん

> マイクロソフト新着サポート技術情報取得について…

うぐ、いや、忘れていたわけではないのです。
…嘘です。ちょっと忘れていました。すいません(^^;

> 1)インデックスページからリンクで飛んで個別 KB を引っ張る仕組み

まず、Iriaの展開URL風に書けば、
http://www.microsoft.com/japan/support/tdoc/newest_[1-77].asp
がインデックスですね。(これより古い記事はどこにあるんだろう)
現時点で最新のは
http://www.microsoft.com/japan/support/tdoc/newest_77.asp
というわけです。
記事のダウンロードの仕方は、wshbbs.vbsを参考にしてください。
# 最新インデックスの番号をhttp://www.microsoft.com/japan/support/tdoc/newest.asp
# から取得する処理を考える必要があります。

次に、各ページには
<IMG SRC="/japan/support/library/images/newkb.gif" alt="新規追加"><A HREF="/japan/support/kb/articles/J???/?/??.htm">新着タイトル</A><BR>
もしくは
<IMG SRC="/japan/support/library/images/notnewkb.gif"><A HREF="/japan/support/kb/articles/J???/?/??.htm">タイトル</A><BR>
という各々の項目があります。
正規表現でこれらのリンク先(A要素のhref属性の値)を抽出すればいいことになります。
で、抽出したURLを順に 2)の処理にかけてやります。

その際、どの記事までを取得したかをファイルなりレジストリなりに記録します。
(wshbbs.vbsの場合は、wshbbs.iniに記録しています)
次回の取得時は、この設定ファイルを読み込み、取得済みの記事は読み込まないようにします。
(これで記事の重複が避けられる)

ところで、ここで抽出したURLに記事がなく、なぜか別のURLに転送される
ことがあるという問題があります。
抽出したURLの記事から転送先URLを読み取り、転送先URLに対して 2)の処理を
かけると良いでしょう。

> 2)KB の体裁(HTMLソース)の変換

「タグを取る」「正規表現」というキーワードでWebを検索してみてください。
わりとポピュラーな方法が見つかると思います。
センタリングや改行等、いかに元のHTMLをプレーンテキストで読みやすく
変換するか、腕の見せ所です。
(Datulaには自動変換機能があるので、HTMLそのままつっこんでもいいですけどね)

これで何とかなりますでしょうか。

# MSKB用「何か。(仮)」のヘッドラインセンサってあったような気がする。

Kenji Yamamoto さん (ethernet@par.allnet.ne.jp) 2001年 05月 18日 16時 38分 30秒

マイクロソフト新着サポート技術情報取得について…

To: むたぐちさん
いつぞやにいただいたスクリプトとにらめっこしているんですが、
WSH 触ってないということも相俟って、どこをどうすればいいのやら、
よくわからないです。(汗)
何がわからんか、というと、現状では以下のものです。

1)インデックスページからリンクで飛んで個別 KB を引っ張る仕組み
2)KB の体裁(HTMLソース)の変換

大まかには、手順は本文のコメント部分なども見てみたところ、
きっと EdMax な掲示板定義ファイルと同じようなもの
ではないかと思うのですが、先に進みません。(汗)

とりあえず、何をどうするかを資料探しながら考えます。

sato さん 2001年 05月 18日 10時 18分 53秒

To むたぐちさん

ありがとうございました。
おかげさまでできました。

さん 2001年 05月 18日 09時 48分 21秒

たむぐちさん、ありがとうございました。
タイトル無事取得できました。
HPでいろいろ探したのですが、見つからず困っていたので
助かりました。
またよろしくお願いします。m(_"_)m

管理人むたぐち さん (mutaguchi@roy.hi-ho.ne.jp) 2001年 05月 18日 00時 27分 14秒
URL:http://www.roy.hi-ho.ne.jp/mutaguchi/

To: 太郎 さん

> WSHで共有フォルダの共有名を取得したいのですが
> WMIを使ってもどうすればよいか分かりません。

http://www.roy.hi-ho.ne.jp/mutaguchi/wsh/src/share.lzh
のdelshare.vbsが参考になると思います、というか回答そのものですね(^^;

> WMIの説明が英語なので私にはよく理解できません。

辞書を片手に何とかがんばってください。


To: sato さん

> ADSIを利用してActiveDirectoryの情報を書き換えたいのですが、
> ユーザの移動プロファイルのパスの指定のところで一度入れたパスを
> 削除したいのですが、空文字を入れようとするとエラーが出てしまいます。

null stringを入れるといいような気がします。(未確認)


To: 梨 さん

> IEをCreateObjectして、指定したページを
> Navigateしています。
> このとき表示しているページのタイトルを取得することは
> 可能でしょうか?

IE.document.title でどうでしょう。


To: いちにい さん

> 因みに、例のエディタの方は、VBSのサンプルと、テンプレートを残して、
> アンインストールしちゃいました。

あらま。日本人の使用者数激減ですね。(たぶん5人くらいしか使ってないでしょうから)

> # EmEditorのツールバーが折り返しじゃないのが使いにくいっす。

ん、プラグインを大量に入れない限り、折り返すほどのボタンはないと
思うんですが…。

> 宣言した変数名の列挙とかなら、プラグインで無いですかね?

ないものは作る、が鉄則。
よろしく。(おい)

> 補完機能の方は、エディタ自体を殆ど使ったこと無いです。
> 国産では、どれが一番、スクリプトに向いてるんでしょう?

一応、リンクのページにいろいろ紹介してますが、どれも決め手に欠ける、かも。
私はEmEditor ver.2で十分ですが。



あれ、なんか今日の返信はあっさり風味。

いちにい さん 2001年 05月 17日 19時 58分 40秒

● 松島さん

> Cで、#define を駆使して、int や if やらまで日本語っぽくしてしまおう、というネタを
> 昔どこかで(←いつもそればっかり^^;)見かけたことがあります。
> ネタとして笑えました。(笑)

やっぱり有るんですね。そう言うの。(笑)
cのネタでは、某有名サイト(〜診断室)で、”{}”を”BEGIN、ENDに変えるってのを、
見た事有ります。
コレって、凄く見にくい。(笑)


>> 余裕が無いからこその工夫とか有って、色んな職人芸?とかも多かったんでしょうね。

> iアプリも、きっとそんな職人芸の世界なんだと思います。

Javaでしたっけ。
画面が小さいので、ゲームのキャラとか、大変そう。
iアプリで、開発遣ってみたいなぁ。
自分には、無理だけど。(笑)



> 当時の画面をモチーフにしたWin9x用の起動ロゴです。(参考)
> http://db.popup.org/matsushima/temp/20010116/LOGOSYS.LZH
> http://db.popup.org/matsushima/temp/20010116/logo.gif

見ました。
何か、マニアックで。(笑)
所で、Win98の起動ロゴって、何処で変えるんですか?
終了ロゴは、判るんですけど・・・。



● 管理人むたぐちさん

>> テンプレート機能くらい付けても良いのにねぇ。

> EmEditorなら、プラグインでそういうのがあったかもしれません。

プラグインが有るなら、何とかなりそうですね。
で、EmEditorって、良いんですか?
って、聞く前にDLしてみましたぁ。(笑)
因みに、例のエディタの方は、VBSのサンプルと、テンプレートを残して、
アンインストールしちゃいました。
サンプルは、50本位有ったけど、家の環境では、動かないのが結構あような・・・。
# EmEditorのツールバーが折り返しじゃないのが使いにくいっす。
なんで、メニューだけ折り返しでけんねん。(笑)


> ただ、補完機能となると、これは外部から実現するのは難しそうです。
> やはり、エディタ自体に対応してもらわなければ…。
> # そういう機能があるエディタってあります?

宣言した変数名の列挙とかなら、プラグインで無いですかね?
補完機能の方は、エディタ自体を殆ど使ったこと無いです。
国産では、どれが一番、スクリプトに向いてるんでしょう?


さん 2001年 05月 17日 16時 58分 57秒

こんにちは。
IEをCreateObjectして、指定したページを
Navigateしています。
このとき表示しているページのタイトルを取得することは
可能でしょうか?
locationNameだと、ファイル名が取得されてしまうので
方法がわからず、困っています。
よろしくお願いします。

sato さん 2001年 05月 17日 15時 33分 57秒

ADSIを利用してActiveDirectoryの情報を書き換えたいのですが、
ユーザの移動プロファイルのパスの指定のところで一度入れたパスを
削除したいのですが、空文字を入れようとするとエラーが出てしまいます。

objUser.Put "profilePath" , ""
objUser.SetInfo

のように書くとエラーがでるのですが、何かいい方法はありませんか?
どなたかお願いします。

太郎 さん 2001年 05月 17日 10時 34分 30秒

はじめまして。
WSHで共有フォルダの共有名を取得したいのですが
WMIを使ってもどうすればよいか分かりません。
WMIの説明が英語なので私にはよく理解できません。
どなたか教えていただけないでしょうか?

管理人むたぐち さん (mutaguchi@roy.hi-ho.ne.jp) 2001年 05月 16日 17時 47分 26秒
URL:http://www.roy.hi-ho.ne.jp/mutaguchi/

変数のつけ方に関して、身近にとんでもないものがありますよ。
IEの「検索」エクスプローラバーのソースを見てみよう!

(私信) ピコ助さん、あれを解読するのはちょっと酷です(^^; 駄目かもしれません。


To: FreeMail さん

> WSHから[CTRL]+[ALT]+[DEL]による強制終了やウィンドウズボタンを無効化
> することは可能なんでしょうか?

うーん、それってWSHがやる仕事ではないような…。
(技術的に無理と言うのもありますが)

おそらく、スクリプトの動作をユーザーに止められないようにしたい、という
ことなのだと思いますが、他のアプローチで解決を図るべきだと思います。
WSHに、常駐というかサービス的な動作を期待してはいけないんじゃないかと。
# とくにマルチユーザーな環境の場合。


To: AKiOS さん

> # 「VBはビジュアル開発ツールだ。あんなものをプログラミング言語と呼ぶのは
> # 羊頭狗肉」という意見には賛同しますけどね。

そうそう。
あれをプログラミング言語と同列に捉えるから、ダメダメな評価しかされないんです。
(というか、私自身がその罠に陥っているが)
お手軽開発ツールとして見れば、結構よくできているのです。
プログラミングの経験が浅い人でも、とにかく「目的どおりに動く」アプリを
比較的容易に作ることができるというのは重要。

> > バッチはもともとは、「手続き型処理」に対する「一括処理」を指す言葉だったと思います。
>
> リアルタイム処理に対するのがバッチ処理なのでは?

そうですね。
リアルタイム処理←→バッチ処理
手続き型言語←→宣言型言語
らしいです。

> 別に標準機能で持っていなくても、エディタの(プログラマブル)
> マクロ言語でできなくもないと思います。(^^;

まあ、COMコンポーネントのメンバ関数を補完してくれる機能は、さすがに
マクロでは作れないでしょう…。

AKiOS さん 2001年 05月 16日 14時 28分 57秒

To: 松島 さん

> > > 転じて、コンパイル系の言語のみをプログラム言語と呼ぶ流れがあります。(これにはちょっと疑問)
> > どういう流れなんでしょう? (^^;
>
> 更に飛躍して、「スクリプトはプログラム言語ではない」と主張している方もいらっしゃるんですよ。

あらら、はぐらかされてしまいました。(^^;
ちなみに、その「スクリプト」とはスクリプト言語のことなのか、シェルスクリプト
のことなのか、はっきりしないですね。
# 「VBはビジュアル開発ツールだ。あんなものをプログラミング言語と呼ぶのは
# 羊頭狗肉」という意見には賛同しますけどね。


> バッチはもともとは、「手続き型処理」に対する「一括処理」を指す言葉だったと思います。

リアルタイム処理に対するのがバッチ処理なのでは?


> > # 誰かが言ってたけど、やはり社名変更した方がいいと思う > Microsoft
>
> 小さく産んで大きく育てる!?(違)

確かによく育ちますね。(^^;


To: 管理人むたぐち さん

> ただ、補完機能となると、これは外部から実現するのは難しそうです。
> やはり、エディタ自体に対応してもらわなければ…。
> # そういう機能があるエディタってあります?

WZエディタにはそれらしきもの(入力支援機能)がありますね。
別に標準機能で持っていなくても、エディタの(プログラマブル)
マクロ言語でできなくもないと思います。(^^;
# DOSプロンプトではVZエディタを常駐させて使っていますが、
# Tabキーによるファイル名補完もVZマクロなんですよ。(^^;

FreeMail さん 2001年 05月 16日 12時 43分 17秒

こんにちは。
久しぶりに質問です。
WSHから[CTRL]+[ALT]+[DEL]による強制終了やウィンドウズボタンを無効化
することは可能なんでしょうか?

管理人むたぐち さん (mutaguchi@roy.hi-ho.ne.jp) 2001年 05月 16日 03時 35分 16秒
URL:http://www.roy.hi-ho.ne.jp/mutaguchi/

DOS/V magazine読んだんですけど、なかなかよくできた記事でしたよ。


To: taka さん

> 実は、フルパス記述ではすでに試していて、バッチが起動しない状況
> のため(vbsファイルと同じフォルダ内にあれば起動できます。)、どな
> たかご存知ないかと思い、書き込んでみました。

いちにいさんもご指摘のとおり、パスにスペースが含まれている場合は、""で囲む
必要があります。
これでどうでしょう?


To: いちにい さん

> テンプレート機能くらい付けても良いのにねぇ。

EmEditorなら、プラグインでそういうのがあったかもしれません。

> よく使う関数名とか、命令ブロックを、クリックで貼り付けるツールでも作るしかないですね。
> ショートカットキーで、外部ソフトを起動する機能くらい有りますよね?>国産エディ。
> CTRL+?で、自作ツールを起動して、テンプレートのリストBoxを表示して、
> 選択した関数名を貼り付けた後、終了とか・・・。
> レスポンスを良くするには、起動したままのが良いかな?
> (この手のツールとか、ベクターにゴロゴロしてそうだけど。)

たしかにありますね。
なんだったか忘れましたが、クリップボード履歴と定型句をテキストボックスに
貼り付ける常駐ユーティリティがありました。

ただ、補完機能となると、これは外部から実現するのは難しそうです。
やはり、エディタ自体に対応してもらわなければ…。
# そういう機能があるエディタってあります?

> 好きな人には、良いけど、興味ない人から見たら、余計なもんですよね。
> 数学で、BASICなんて。
> 数学スキな人は、案外興味示すのかな?

まあ、BASICを使って数学の問題を解くという話ですから。

> 出来るんですねぇ。コレ。(笑)
> VB5でも行けます。

VBSでは無理みたいです…。

> 等々、正に超漢字?(爆)

(笑)

> よく判らないです。
> 2chだけの常識ですか?

まあ、逆(2chから「普通の」掲示板にリンクを張る)は、場合によって迷惑行為になりえますが。


To: AKiOS さん

> 確かにDOSの当初はキーボード入力を取り込むコマンドがなかったのですが、
> NECは独自にMS-DOS3.3の頃にBATKEYコマンドを追加しましたし、後に
> 純正MS-DOSやIBMのPC DOSでもCHOICEコマンドが使えるようになりました。

昔からあったんじゃないんですね。> choice
ちなみに、Win2000にはchoice.comがありません。
どなたか、WSH5.6で追加された機能を使って作ってみませんか?

> > ところで、最近よく過去記事を記事番号で書くことが多くなったのですが
> > (これもこのスクリプトの賜物なのですが(^^;)、これがクリッカブルだと便利だなあ、
> > と思っています。
>
> 了解しました。

おおっ、ありがとうございます。

> 記事番号をクリッカブルにすると「戻る」ボタンがないと不便ですね。
> もうボタンを置くスペースがないんですが、1個ぐらいならなんとかします。(^^;

ということは「戻る」だけで「進む」はない、コモンダイアログ風ですね。

> げッ! 想像以上でしたね。(^^;
> # 誰かが言ってたけど、やはり社名変更した方がいいと思う > Microsoft

名前負けの逆バージョン。
ま、創立当時は、誰もここまで(いろんな意味で)大きくなるとは
思っていなかったのでしょう。


To: 【おじさま】 さん

> PC/AT 互換機で DOS を使った経験が少ないのですが、CHOICE という
> コマンドは全く知りませんでした。BATKEY 相当の機能はないと思って
> いましたので、当時はフリーウェアの BU を使ったり、NEC DOS の
> BATKEY が機種依存していませんでしたのでこれを使ったり(今思うと
> ライセンスの問題があるのかもしれませんが)していました。

choiceは昔から外部コマンドだったのでしょうか。
batkeyコマンドって知らないですね…。

まあ、これらのコマンドは、バッチファイル本来の意味からすると矛盾した
コマンドであるとも言えなくもないですね。


To: Lib30 さん

> 確か、数列、複素数平面、BASICの三つから二つを高校の数学の先生が選択するということになっていたと思います。

懐かしい。数学A,B,Cの範囲ですね。

> ちなみにうちの高校ではBASICはやりません(というか、BASICをやる高校はほとんどない)。

あ、やはりそうですか。
文部省(今は文部科学省か)もいいかげん間違いに気づけよ。
円周率を3にしてる場合じゃないぞ。
日本人から計算力を取ったら何が残るんだ。

> 二次試験で出す大学なんてほとんどないからです(情報処理系でも今更BASICなんて出しません)。

まあ、そりゃそうでしょうね。

> つまり、大学入試には不利な科目なんです。

ん、センターの点数稼ぎにはいいのでは、
というか、センターの数学は100点とらなきゃ駄目か(^^;
# 数学IIでとんでもない点数をたたき出したのは私。

> 次のプログラムを実行すると、数の入力を二回求めてくる。それに対して、いずれも2以上の整数を入力するものとして次の問いに答えよ。
> ただし、INT(X)はXを超えない最大の整数である。

マークシートでBASICの問題を出すのがそもそも無茶なんですが、
コンピュータにやらせることを人間がやってどうするんだろうか。

それにしてもお粗末な問題ですねえ。どうも適当につくったっぽいですが(笑)
どこの模試ですか?


To: 松島 さん

> アルゴリズムの楽しさ奥ゆかしさと、現実の難しさを実感できるような、そんな問題であって欲しいです。
> こんな問題が解けても、コンピュータに真似できない「人としての考える力」が備わっているとは言えないのに。(怒&哀)

まっ、センター試験なんて所詮クイズ番組の予選みたいなもんです。
なんて言うと語弊がありそう。

> アルゴリズムとしての論理的な思考を鍛えると共に、情報社会を支えるコンピュータ技術の基礎を学ぶ。
> なんて大義名分なら歓迎できるかな(笑)。

BASICを教えるより先にネチケットを教えるべきだと思うんですが。
時代に即した教育をやらなきゃ、ね。

> 並の2ちゃんねらー、って、どういう人なんでしょう。(素朴な疑問)

逝ってよしとかオマエモナーとか言う人じゃないでしょうか。

> 私の「お気に入り」には意図的にタイトルを変更しているものが複数あるのですが、
> ひっかからなかったものもありました。

キャッシュに残ってない場合はリネームしない仕様(タイトルを取得するためだけ
にそのページをダウンロードするのも馬鹿馬鹿しいのでやってません)ですが、
そのせいじゃないでしょうか。

そうじゃない場合、もし差し支えなければ、URLと変更したタイトルを
教えていただけますか?

> コメントであれば何でも良い、のでしたら、

いえ、/*…*/じゃないと感じが出ないのです(^^;

> <!-- 〜 --> (HTML系)とか、
> //〜〜 (C++系)とか、
> #〜〜 (Unix系)とか、
> '〜〜 (BASIC系)とか、
> ;〜〜 (iniファイル系)とか、
> 000000*〜〜 (COBOL系)とか。
> 他にどんなコメントの書き方があったかなあ(笑)。

* 〜〜 (FORTRAN)
C 〜〜 (FORTRAN)
rem 〜〜 (バッチファイル、VBS)

!ってなかったかな。

> でも、SuperOffice ってのがどこかから出ていたような気が。
> 日本語にすると、超事務所 ? (爆)

ああ、なんかThinkPadについていたような気がします。
未開封ですけど(^^;

超臨界流体
超分子
超伝導
超ひも理論

と、科学のトピックスではよく見かけるんですが。

> …よけいに理解し難いかもしれません。(^^;;

わかったようなわからないような、なんかだまされている気がするような(^^;

結局、各特性関数の具体的な数式がないと、特徴的なハウリングの音波の
関数が導かれない気がします。

うーん、ここは現役のLib30さんに解いてもらいましょうか。(って情けないぞ)

松島 さん (matsushima@popup.org) 2001年 05月 16日 01時 46分 01秒
URL:http://www.popup.org/ai/

To: Lib30 さん

> ちなみにおとといあった模試ではこんな問題が出ました。

ぐはっ(汗)。
相変わらず、ふざけた問題なのですね……。(^^;

アルゴリズムの楽しさ奥ゆかしさと、現実の難しさを実感できるような、そんな問題であって欲しいです。
こんな問題が解けても、コンピュータに真似できない「人としての考える力」が備わっているとは言えないのに。(怒&哀)


To: AKiOS さん

> > 広義では、コンピュータに演算処理を指示できる言語、のことを指すと思います。
> > もう少し狭めると、制御構文のある言語、のことを指すと思います。
> > ぐっと狭めると、実行モジュールとなるコードを生成できる言語、のことを指すと思います。
> # 何か、かみ合っていないような…。(^^;

う、確かに(汗)。
でも、一般人の認識や、歴史的な経緯、コア(?)な人の認識を考慮すると、そんな風かな、と思えるんです。

> > 転じて、コンパイル系の言語のみをプログラム言語と呼ぶ流れがあります。(これにはちょっと疑問)
> どういう流れなんでしょう? (^^;

更に飛躍して、「スクリプトはプログラム言語ではない」と主張している方もいらっしゃるんですよ。

> # 誰かが言ってたけど、やはり社名変更した方がいいと思う > Microsoft

小さく産んで大きく育てる!?(違)


To: いちにい さん

> 数学で、BASICなんて。
> 数学スキな人は、案外興味示すのかな?

アルゴリズムとしての論理的な思考を鍛えると共に、情報社会を支えるコンピュータ技術の基礎を学ぶ。
なんて大義名分なら歓迎できるかな(笑)。

> Private Sub いや〜ん(ByVal 字 As String)
> 等々、正に超漢字?(爆)
> って、遣りすぎ?(笑)

Cで、#define を駆使して、int や if やらまで日本語っぽくしてしまおう、というネタを
昔どこかで(←いつもそればっかり^^;)見かけたことがあります。
ネタとして笑えました。(笑)


To: むたぐち さん

> > 並の2ちゃんねらーより非常識だぜ・・・マジで。
> ということは、私が非常識なのかこのページが普通じゃないのか。

並の2ちゃんねらー、って、どういう人なんでしょう。(素朴な疑問)

> お気に入り内のインターネットショートカット名を正しくするスクリプトを作りました。
> とりあえず、さくらみかげをふくらみかけに変えるのに使ってください。

おお、さっそく!(笑) ・・・と、あれ?

私の「お気に入り」には意図的にタイトルを変更しているものが複数あるのですが、
ひっかからなかったものもありました。


> ○マネしてみる

コメントであれば何でも良い、のでしたら、

<!-- 〜 --> (HTML系)とか、
//〜〜 (C++系)とか、
#〜〜 (Unix系)とか、
'〜〜 (BASIC系)とか、
;〜〜 (iniファイル系)とか、
000000*〜〜 (COBOL系)とか。
他にどんなコメントの書き方があったかなあ(笑)。

> ところで、スクリプトとバッチの違いって、人間が処理に介在する(可能性がある)か
> しないかの違いなんでしょうか?

バッチはもともとは、「手続き型処理」に対する「一括処理」を指す言葉だったと思います。
#銀行系のオンラインシステムが夜中にガリガリ処理をしているものとか…。

DOSのいわゆるバッチファイルで、スクリプト化していったと思います。
#DOSのバッチファイルは、Unixで言うところのシェルスクリプトですし。

> それにしてもふざけたネーミングだ。ちょー…かんじぃ?

超WSH、超VB、超Windows、超ビルゲイツ……(汗)。

でも、SuperOffice ってのがどこかから出ていたような気が。
日本語にすると、超事務所 ? (爆)

> > 5.以降、音量はフィードバックにより次第に大きくなる。
> >   その際に、アンプの増幅特性と、スピーカ特性とマイク集音特性により、音質は次第に変調していく。
> 私も個人的に調べたんですが、5.の段階で、具体的にどうやって変調が起こるのか、
> まだ理解していません(^^;

ラジカセで鳴らした音楽を、別のラジカセで録音してみると、元とは少し違って録音されていますよね(劣化とも言う)。

t=音が鳴っている時間軸、O(t)=オリジナル音声、S(t)=スピーカ出力音声、R(t)=録音音声、
fa(音声)=アンプ特性関数、fs(音声)=スピーカ特性関数、fr(音声)=録音特性関数 とすると、

ラジカセの場合は、

0≦t で、

S(t) = fs( fa( O(t) ) ) なので、

R(t) = fr( fs( fa( O(t) ) ) )

と表せると思います。
# 録音されたものを鳴らすと、fs( fa( fr( fs( fa( O(t) ) ) ) ) ) になりますね(^^;;;

5.の場合は、d=僅かな時間(スピーカ出力された音声がマイクで拾われて再びスピーカ出力されるまでの)、とすると、

0≦t<d の場合、

S(t) = fs( fa( O(t) ) )

d≦t の 場合、

S(t) = fs( fa( O(t) + fr( S(t-d) ) ) )

という感じの漸化式になると思います。


…よけいに理解し難いかもしれません。(^^;;

#漸化式なんて何年ぶりだろう。例によって私自身が大間違いしている可能性もあります(^^;)。


> Breakキーなんて、VBでしか使わないです(^^;

ScrollLockキーよりマシかもしれません。
押し間違えたときしか使わないです。(爆)

> レジストリのセキュリティ設定って、regedit.exeでは無効なんですかね?
> regedit.exeをアドミニストレーター権限でしか実行できなくすればOKかな?

一アプリケーションに過ぎない regedit.exe の実行を禁じても、
WSHやその他のアプリケーション経由で難なく書き換えられるので、
それではOKとは言えないと思います(^^;)。

レジストリという一種のデータベースそのものが階層ごとに参照権限や書込権限を管理する機構を
もっていないと心配です(^^;)。仮に実装するとすればAPIレベルの内側かな?

> やっぱり日本はスクリプト後進国だなあ…。

効率的にソフトウェア資源を利用(作成)する考え方が「お偉いさん」や
「ソンな会社の若い人」に浸透して、いろんなツールを都合よく使っていくようになって欲しいです(^^;)。

スクリプトのよさ、コンパイル系言語のよさ、Windowsのよさ、Unix系OSのよさ、
そういった「よさ」を都合よく組み合わせていきたいですよね。(笑)

> > でも、なぜか、BASICを知らない世代でも、変数名が短くて、意味不明な人って居るんですよね。
> 変数をアルファベット一文字で定義するとか。しかもそれぞれの型はばらばら。

教科書の悪いサンプルや、画面の横幅の狭いチープなプログラム環境などが、
「長いと面倒」という感覚をより強いものにしているのだと思います(^^;;)。


To: AKiOS さん

> ランタイムライブラリとは、プログラムを実行する際に必要なライブラリのことで、
> 共有ライブラリ(WindowsではDLL)とは、プログラム実行時もしくは必要になった
> ときにリンクされるライブラリのことです。

なるほど、言われてみるとその通りですね。失礼しました(^^;)。


To: いちにい さん

> 余裕が無いからこその工夫とか有って、色んな職人芸?とかも多かったんでしょうね。

iアプリも、きっとそんな職人芸の世界なんだと思います。

> うっ。自分なんて足下にも及ばない。
> なのに、偉そうなレスなど付けちゃってました。(笑)

そんなことないですよ(^^;)。

> しかも、解像度が、256x212 のパソコン・・・。(汗)
> いまいち画面が想像できないんですけど。(笑)

1バイト文字が6×8ドット(カタカナ等は8×8)だったので、
横40文字×縦24文字は確保されていました。(もうちょっとリッチな画面モードもあったのですが)

当時の画面をモチーフにしたWin9x用の起動ロゴです。(参考)
http://db.popup.org/matsushima/temp/20010116/LOGOSYS.LZH
http://db.popup.org/matsushima/temp/20010116/logo.gif

> > http://www.geocities.co.jp/Hollywood/1751/JISknown.html
> しかし、変な偏見持ちそうですね。
> 文字どおり「ここだけ」な感じ?

似たことが書いてあるページは幾つもあるので、事実の裏付はあるのだと思います。
#その事実をどのように捉えてどう伝えるかは人それぞれだと思いますが…(^^;)。

Return