お前ら、wsh使ってますか? Part2

このエントリーをはてなブックマークに追加
940名無し~3.EXE:03/07/07 23:57 ID:QdiAogoy
どの辺がパラノイア?
941名無しさん募集中。。:03/07/08 12:47 ID:Kl/CgIeK
>940
元号関係が不要なとこまで作っていること。
本来明治より前は太陰暦だから初年末年ボーダーは間違えているのに
942名無し~3.EXE:03/07/08 13:34 ID:+jwGZjhn
パラノイア
精神病の一つ。患者が抱く妄想は論理的には一貫しており、行動・思考は秩序が保たれている。偏執病。

Kokugo Dai Jiten Dictionary. Shinsou-ban (Revised edition) © Shogakukan 1988
国語大辞典(新装版)©:小学館 1988


…多分あなたは精神病を患ってはいない。
943924:03/07/09 02:06 ID:Y3Ww/hj9
>>939
> >924
> これは。。全く持ってそういう用途だよなぁ。知ってたらWMIを勧めなかったけど、
> かなりの所出来ているようなので、乗り換えもまた勧めない。
> netshのKBを見るところまた同様の悩みは出てくるはず。
> また、ネットワーク設定をファイルにストア・リストアする用途はとても汎用的に思う。

手動でIPアドレスの設定をやっておいて、コマンドプロンプトから下記を実行。

netsh interface ip dump > setting01.nsh

必要なだけ繰り返して設定ファイル作成。あとは、wshから設定を選択させて、

netsh -f setting01.nsh

などと実行させればよい。面倒なんで試してないけど、この方法なら、
DHCPに設定したときにデフォルトゲートウェイの値が残るようなことはないと思う。
944名無し~3.EXE:03/07/09 09:59 ID:WThBaBuF
http://pc.2ch.net/win/kako/1009/10091/1009175619.html
の151のIEコンテキストメニューで「引用符付き貼り付け」を使用したいのですが
ウィンドウが背面に隠れる問題を解消するためにはどの部分をどのように変更すればいいのでしょうか?
(レス番 151-156 です)

検索して GetObject を試したり
>>636
>>638
を参考にして試したりしたのですがどうもできません

多分すごい低レベルな質問だと思うのですが
わかる方お願いします
945933:03/07/10 01:48 ID:JgmvaJx4
>>935
おおーそれです。scd56jp.exeがドキュメントのアーカイブなんですね。
最新版のWSH実行プログラムのページだと思ってちらっと見てスルーしてました。
大変助かりました。ありがとうございます。
946名無しさん募集中。。:03/07/10 23:14 ID:S91DLjCN
>942
(((゚д゚;)))ちょっと怖かったよ。
コードの執拗さも自分の首尾一貫の態度の取れなさも足りないんだろうな。
まぁ、思うところはあったが板違いなので手短に。

>943
これは便利。
コンテキストのツリーの概念からして始めて見る物だ。
理解と検証をするにはそれなりに使ってみないと分からないな。
ただネットワークが使えなくなると平日の酒のつまみがなくなるので痛い。検証はちと躊躇。

>944
document.title ( + " - Microsoft Internet Explorer")を使ってAppActivateしちゃいかんですか?
947名無し~3.EXE:03/07/11 21:16 ID:oMkL2Dfh
>944
Set win = external.menuArguments
Set rng = win.document.selection.createRange()
Set oClip = window.clipboardData

sData = oClip.getData("text")
以下同じ...
948名無し~3.EXE:03/07/11 21:51 ID:FjHkitQJ
949名無し~3.EXE:03/07/11 23:03 ID:HCNAuxyl
クレバーな皆様にご質問させてください。

あるテキストファイル(foo.txt)があって、その内容の1文字だけを
書き換えたいのですが、もっともスマートな方法はどうしたらいいでしょうか。

以下の2003の 3を 4にするとか。

----foo.txt----
a = Windows Server
b = 2003
c = Service pack 4
---------------
950944:03/07/11 23:40 ID:1BDw8DI/
おおぉーーーーー947さん、ありがとうございました。
それでばっちりできました。速度も速くなりました。

946 のは試したら「サポートされていません」とエラーが出てしまいました。

レスくれたお二人、感謝感謝です。
951名無し~3.EXE:03/07/12 04:04 ID:elKqYw3Z
WEBページをHTTPでGETするにはどうしたらいいんでしょう?
指定したURLをとってきてソース(文字列)を変数に格納したいんですが。
952名無し~3.EXE:03/07/12 08:18 ID:cGlGTxq4
過去ログ見れば
953名無し~3.EXE:03/07/13 01:34 ID:c1xSt7OJ
>>951
Sub GetFile(strDestFolder,strImageFile) 'ファイルダウンロード
Dim objStream, objHTTP
Const adTypeBinary = 1
Const adSaveCreateOverWrite = 2
set objHTTP = CreateObject("msxml2.XMLHTTP")
'from ASP==> set objHTTP = CreateObject("msxml2.ServerXMLHTTP")
set objStream = createobject("adodb.stream")
objStream.type = adTypeBinary
objStream.open
objStream.write objHTTP.responseBody
objStream.savetofile strDestFolder & strImageFile, adSaveCreateOverWrite
set objStream = nothing
Msgbox "Downloaded to: " & strDestFolder & strImageFile
End Sub

'strDestFolder:http path
'strImageFile:filename(include extention)

Win2kで確認。ほかは知らん。
あとはFSOで煮るなり焼くなりしてください。
実行環境のMDACとXMLパーサは最新版でアップデートして

>>952
氏ね
954名無し~3.EXE:03/07/13 04:06 ID:c0HqZbCt
>>949
どんな方法がスマートかは、状況によるよ(汗
置換だけが目的ならsedでやるけど、wshで、ということだよね。

「b = 2003」が、「b=2004」でもよいのか「b = 2004」でなければならないのか、
「b = 2003」ではなく「b = 2033」だった場合、
「b = 2034」「b = 2043」「b = 2044」のどれを期待しているのか。
955949:03/07/13 13:32 ID:c1xSt7OJ
>>954
説明不足ですみませんです。
Windows2000標準プラットフォームを前提にしているため
WSHを選択しています。
具体的には、あるINIファイルの編集が目的で

TEST=0 だったら、 TEST=1 に書き換え
またその逆もあり、という感じです。
=のまわりの空白の有無は気にすればベターですが、「詰まっている」ことが前提でかまいません。
TEST=の右辺は、0か1しかありません。

こんなかんじですが、状況は見えていただけたでしょうか。
956949:03/07/13 13:44 ID:c1xSt7OJ
追伸です。
今実現している方法は、テキスト全行を行単位で読み込んで変数sTsに蓄積します。
読み込んだ行がTEST=0またはTEST=1だった場合に、
その代わりにあらかじめ用意していたTEST=1またはTEST=0の文字列をsTsに書き込むことで
目的を達成し。最後にsTsをファイルへ保存しています。
これだと、INIが巨大になったりするとメモリを食うのでどうも格好が悪くていけません。
957名無し~3.EXE:03/07/13 15:04 ID:L2bWjCF+
>>956
格好の悪いその方法が最もスマートに思える。
958名無し~3.EXE:03/07/13 21:33 ID:ms1b+O0t
>>956
入力用と出力用に2つファイル開いて(出力用はtempファイル)、
変数に蓄える代わりに読み込みと書き出しを同時に行い、
closeした後tempをオリジナルのファイル名にリネームってのは?
959名無し~3.EXE:03/07/14 00:34 ID:48WYW+Y+
>956
INIファイルにアクセスするコンポーネント
ttp://www.kawabata.ksi.ne.jp/aspProfile/

こんなのはどうかな?
960名無し~3.EXE:03/07/14 02:20 ID:k4HYEcml
指定したフォルダの最も新しく作成されたファイルを別のフォルダに
コピーしちゃたりできますか?
961名無し~3.EXE:03/07/14 02:59 ID:OanMijpS
>>960
できます。
962名無し~3.EXE:03/07/14 22:59 ID:JWrlt5B0
>>961
その方法を詳細に教えてもらったりできます?
963名無し~3.EXE:03/07/14 23:00 ID:OanMijpS
>>962
できません。
964名無し~3.EXE:03/07/14 23:18 ID:JWrlt5B0
>>963
クソッ!コケにしやがって!!
965名無し~3.EXE:03/07/14 23:48 ID:NmSKr1/q
Set fso = CreateObject("Scripting.FileSystemObject")
Set fld = fso.GetFolder("指定した")
For Each f In fld.Files
   If ct < f.DateCreated Then
      ct = f.DateCreated
      Set fx = f
   End If
Next
966つづき(w:03/07/14 23:49 ID:NmSKr1/q
fx.Copy("別の")
967名無し~3.EXE:03/07/14 23:59 ID:OanMijpS
>>964
できるかできないかと問われればできるわけだし、
詳細に教えろと言われても、まず少しは自分で考えて欲しいわけだけど。

オレならバッチファイルでやるし。最新ファイルは下記で取れる。
dir /od /b | tail
968名無し~3.EXE:03/07/15 00:07 ID:AihtrcD9
>>965
うわっありがとう!
>>964
前スレまでさかのぼって読んだけど・・むう・・おっしゃるとおり。
969山崎 渉:03/07/15 11:19 ID:PgFZzGxa

 __∧_∧_
 |(  ^^ )| <寝るぽ(^^)
 |\⌒⌒⌒\
 \ |⌒⌒⌒~|         山崎渉
   ~ ̄ ̄ ̄ ̄
970名無し~3.EXE:03/07/15 14:47 ID:1Ehn8M96
新スレは?
971名無し~3.EXE:03/07/16 22:36 ID:3D7OEEcb
VBSで Temporary Internet Files をクリアしたいんだけど、
DeleteFileメソッドが利かないみたい。何かいい方法ないかな。
fs.DeleteFile "キャッシュのフォルダ\*.*" で、何も消えない。
972名無し~3.EXE:03/07/16 22:45 ID:jKVD6kUI
fs.DeleteFolder "キャッシュのフォルダ\*"
じゃねぇ?
973名無し~3.EXE:03/07/17 23:46 ID:Ds8qPVD8
@local administrators group に、ユーザを追加するスクリプト
 だれかご存知でないですか?

Aログオンしているユーザが、ローカルPCのAdministrator権限をもっているかどうか調べる
 スクリプトは、だれかご存知でないですか?
974名無し~3.EXE:03/07/18 02:30 ID:RgiUrq06
Sub AddAdminGroupUser(paraUser)
Dim WshNetwork
Set WshNetwork = CreateObject("WScript.Network")

Dim strMyComputerPath
strMyComputerPath = "WinNT://" & WshNetwork.ComputerName & "/"

Dim objGroup
Set objGroup = GetObject(strMyComputerPath & "Administrators,group")

Dim objUser
Set objUser = GetObject(strMyComputerPath & paraUser & ",user")

If Not objGroup.IsMember(objUser.ADsPath) Then
objGroup.Add(objUser.ADsPath)
End If
End Sub
975名無し~3.EXE:03/07/18 02:31 ID:RgiUrq06
Function IsAdminGroupMember()
Dim WshNetwork
Set WshNetwork = CreateObject("WScript.Network")

Dim strMyComputerPath
strMyComputerPath = "WinNT://" & WshNetwork.ComputerName & "/"

Dim objGroup
Set objGroup = GetObject(strMyComputerPath & "Administrators,group")

Dim objUser
Set objUser = GetObject(strMyComputerPath & WshNetwork.UserName & ",user")

IsAdminGroupMember = objGroup.IsMember(objUser.ADsPath)
End Function
976名無し~3.EXE:03/07/18 13:37 ID:h1ywYXqg
.NETのクラス郡をそのまま使えるようなスクリプトってできないのかな。
977名無し~3.EXE:03/07/18 15:51 ID:Ba7hFjna
JScript.NET?
978973:03/07/18 22:30 ID:8IVCdhdW
974-975
すばらしいですね!! Win2kで確認しました。
うまく動作しています。感謝です。
ところで、これってNTWorkstation SP6a IE5以上 の環境では
動くでしょうか。
979名無し~3.EXE:03/07/19 03:40 ID:0lYNSUYN
>>973
コマンドなら3行で目的を果たせる。

1)
net localgroup hoge /add
net localgroup administrators hoge /add
2)
net localgroup administrators

知的好奇心や学習目的なら、わざわざwshを使うのもいいんだけど、
同じ結果が得られるなら、より実践的なものを選択するのがスクリプト使い。
というのはオレのポリシー。

>>978
Windows NTで動作させるにはwshのインストールが必要。
上記コマンドならOSのみで動作。
980951:03/07/19 03:55 ID:aOzA1Oj+
>>953
ありがd。
いったんファイルに格納しないと無理なんですかねぇ?
(直接変数に入れるのは無理?)
981951:03/07/19 09:08 ID:+cJG6r+6
直接変数に入れる方法やってみたけど、取得はできても
ちゃんとしたソースの形では格納できなかった。
やったことといえば、a = objHTTP.responseBody
としただけだけど。これじゃだめかもね。
982974-975:03/07/20 00:06 ID:3UWC0ooS
>>978
IE5をインストールした時にWindows Script 5.1もインストールされますので
VBScriptは動作するはずです。
但し、このスクリプトを正しく動かすためには
「Active Directory Service Interfaces (ADSI)」が必要です。
必要であればMicrosoft ダウンロードセンターで「ADSI」をキーワードに
検索してみてください。
983名無し~3.EXE:03/07/20 02:07 ID:HkfCeq9R
次スレ
誰かたてましょうよ。
ここ、けっこう勉強になります(理解できるのはVBS部分の1割ぐらいですけど)
984978:03/07/20 21:13 ID:E0agKsxm
>>982
やはりADSIが必要ですね。
私の環境では残念ながらADSIは使えないので、外部EXEに頼むようにします。
ありがとうございました。
(NTWSはMSの6/30でサポート切れだからさっさと2kにしたいんですけどねえ…)
985名無し~3.EXE:03/07/21 19:53 ID:fuQPfzl2
>>983
オレもいつかは理解してやろうと、ROMり続けてるから
次スレはぜひ欲しい
986名無し~3.EXE:03/07/22 08:26 ID:mXvbxGuv
987_:03/07/22 08:27 ID:/uQgPIWm
988名無し~3.EXE:03/07/22 13:39 ID:61ZaJMEh

      / \〇ノゝ
      /三√从从) )    / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ,,、,、,,,  ヽ | | l  l | ∩  < みんな〜、私たちも1000ゲットするよ〜!!  ,,、,、,,,
,,,     `从ハ~_ワノ) /   \_________________   ,,、,、,,,
      /三/| ゚U゚|\      ,,、,、,,,                        ,,、,、,,,
 ,,、,、,,,   U (:::::::::::)  ,,、,、,,,         \ホントに1000なんて取れるのか!?/
       //三/|三|\   ,,  ∧_∧∧_∧ ∧_∧∧_∧∧_∧∧_∧
        ∪  ∪       (    )    (     )   (    )    )
 ,,、,、,,,         ,,、,、,,,  ∧_∧∧_∧∧_∧ ∧_∧∧_∧∧_∧∧_∧
        ,,、,、,,,       (    )    (    )    (    )    (    )
989名無し~3.EXE
倦め