1 名前:デフォルトの名無しさん [2007/04/16(月) 13:48:54 ] ( ´ゝ`) 誰か詳しい情報キボンヌ ●過去スレ WSH(・∀・)スレッド! pc11.2ch.net/test/read.cgi/tech/1055075469/ ●関連スレ お前ら、wsh使ってますか? part6 pc11.2ch.net/test/read.cgi/win/1155040873/ 【イケメン】阿龍スレ避難所@自己紹介【彼女募集中!】 life8.2ch.net/test/read.cgi/intro/1171897814/ ●個人サイト Windows Scripting Host Laboratory www.roy.hi-ho.ne.jp/mutaguchi/wsh/ Windows Script Wiki winscript.s41.xrea.com/wiki/index.php 音楽 winscript.mine.nu/music/ キャラネタ板・なな板のための何か charaneta.mine.nu/
706 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 20:48:58 ] basp21のsocketって非同期通信できませんか? データ取得できたらコールバック関数を呼びたいんですが。 接続できなかった場合とかタイムアウトになるまで 他の処理ができない
707 名前:685 mailto:sage [2008/02/09(土) 23:10:36 ] 昨日教えてもらったスクリプトを、テキストに出力しようとしたら働きません。 また教えてください。 var objFso = new ActiveXObject("Scripting.FileSystemObject"); var objFile = objFso.OpenTextFile("testdirlist.txt", 8, true); var path String(); objArgs = WScript.Arguments; for (i = 0; i < objArgs.length; i++) { path = path + objArgs(i) + "\n"; } //WScript.Echo(path);//←働く objFile.WriteLine(path);//←働かない objFile.Close();
708 名前:685 mailto:sage [2008/02/09(土) 23:13:59 ] ×var path String(); ○var path = String();
709 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 23:46:55 ] 絶対パスにすれば
710 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 00:18:19 ] var path = ""; で
711 名前:685 mailto:sage [2008/02/10(日) 00:30:39 ] >>709 動きました!
712 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 12:28:54 ] WSH 5.1(Win2k)環境でカレントディレクトリを変更したいのですが Set foo = WScript.CreateObject("WScript.Shell") foo.CurrentDirectory = と言った.CurrentDirectoryプロパティはWSH 5.6(WinXP)以降の環境でしか動作しません。 もちろんWin2kのWSHをバージョンアップすれば動くのですが、それは手間がかかる為 やらずに解決したいと思っています。 やりたい事は、WSHスクリプトファイル(仮にhoge.vbs)と同じ階層に scriptと言うフォルダがあり、 そのフォルダの中に var.bat と言うファイルがあるとして Set objShell = WScript.CreateObject("WScript.Shell") Set fs = WScript.CreateObject("Scripting.FileSystemObject") Set f = fs.GetFolder(".") objShell.Run f.path & "\script\var.bat" 等として、他のフォルダ内の実行ファイルを実行したいのです。 しかし実際にコレをやると、指定されたファイルが見つかりません とエラーが表示されて実行できません。 確かにファイルは存在しますし、WScript.Echo f.path & "\script\var.bat" とかやってパスを確認しても 正しいパスです。 なので、カレントディレクトリを実行ファイルのある場所に移動しないと実行できないのかなと 考え、CurrentDirectoryを変更する方法を考えているのですが・・・ 普通に考えてCurrentDirectoryを変更せずとも実行できるはずですよねぇ・・アドバイス頂けませんか?
713 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 12:37:49 ] パスをだぶるくぉーてーしょんで囲みなさい
714 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 14:26:29 ] >>713 レスありがとうございます。 strDrv = strCurrent & "driver\install.bat" ↑これで、カレントディレクトリ\driver\install.bat がstrDrv に入ります。 その後 objWshShell.Run strDrv で、今までは出来ませんでした。なのでこれを" " で囲みます objWshShell.Run "strDrv" しかしこうすると、strDrvと言う文字列を起動しようとしてしまい、strDrvが変数として扱われず 単なる文字列として扱われるため動作しません。 objWshShell.Run ""strDrv"" として、"をエスケープしてみてもだめ〜 とか考えてたら strDrv = strCurrent & "driver\install.bat" strDrv = """" & strDrv & """" WScript.Echo strDrv objWshShell.Run strDrv これでいけました。最初の"が文字列の開始、 中2つの"が 文字列としての純粋な"を表し (""で"を単なる文字列としてエスケープ)、最後の"が文字列の終了を表すダブルクォート・・・ 結局 """" となり、非常に分かりにくいというか、混乱する形になったのですが、こんなもんなんでしょうか?
715 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 14:47:54 ] こんなもんです
716 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 16:13:45 ] >>714 Python がお勧め
717 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 16:15:22 ] strDrv = Chr(18) & strDrv & Chr(18)
718 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 17:42:26 ] >Set f = fs.GetFolder(".") >objShell.Run f.path & "\script\var.bat" objShell.Run ".\script\var.bat"
719 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 18:10:32 ] >>716 >>712
720 名前:デフォルトの名無しさん [2008/02/11(月) 23:38:48 ] >>714 C言語やjavaだって "\"" みたいな、「たいへん分かりにくい混乱する表記」 になるから、こんなもんです。 もし、コードをスッキリさせたかったら、 Const QQ = """" strDrv = QQ & strDrv & QQ もしくは strDrv = Q( strDrv ) Function Q(ByVal str) Return """" & str &"""" End Function みたいな方法がありますよ。(自分は後者をよくつかう)
721 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 01:25:32 ] Chr(34)は?
722 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 07:40:18 ] "自分は後者をよくつかう"って、使えるの、それ?
723 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 16:41:25 ] うん
724 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 16:56:37 ] >みたいな コードはイメージです
725 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 20:18:12 ] >>724 実際のコードとは異なる場合があります。
726 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 20:24:57 ] >>722 使えない
727 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 23:32:48 ] 使わない
728 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 23:43:08 ] 使われない
729 名前:デフォルトの名無しさん mailto:sage [2008/02/13(水) 00:07:38 ] こんばんです。1つ質問させてください。 vbsでプログラムを組んでいるのですが、vbs親プログラムからvbs子プログラムを 起動は出来ないのでしょうか? 〜〜〜〜〜vbs親プログラム内〜〜〜〜〜〜〜〜〜 Set objWshShell = WScript.CreateObject("WScript.Shell") strCmdLine = "sub_program.vbs str01 str02 " objWshShell.Exec(strCmdLine) この記述で「sub_program.vbs」を引数2つ与えて起動できると思うのですが出来ません。 尚、コマンドプロンプトで[sub_program.vbs str01 str02]実行すると正常に起動します 修正点がありましたらお教えいただけないでしょうか。
730 名前:デフォルトの名無しさん mailto:sage [2008/02/13(水) 00:16:04 ] >>729 strCmdLine = "cscript sub_program.vbs str01 str02 " または strCmdLine = "wscript sub_program.vbs str01 str02 " と記述する必要がある。 コマンドプロンプトでは、"たまたま" cscriptまたはwscriptが省略できる。
731 名前:729 mailto:sage [2008/02/13(水) 00:23:32 ] >>730 ありがとうございました。無事起動すること出来ました。 コマンドプロンプトでは"たまたま"省略可能なんですか・・・
732 名前:デフォルトの名無しさん mailto:sage [2008/02/13(水) 07:49:15 ] という事はExplorerでアイコンをダブルクリックすれば起動するのも"たまたま"だね。
733 名前:デフォルトの名無しさん mailto:sage [2008/02/13(水) 08:13:26 ] //H:でたまたまを切り替えられる。
734 名前:デフォルトの名無しさん mailto:sage [2008/02/13(水) 09:19:40 ] どう考えても>>721 が正解
735 名前:デフォルトの名無しさん mailto:sage [2008/02/13(水) 16:36:06 ] たまたまだけど、これもできる strCmdLine = "sub_program.vbs str01 str02 " objWshShell.Run(strCmdLine)
736 名前:デフォルトの名無しさん mailto:sage [2008/02/13(水) 21:57:32 ] >>735 おまえ、何も解ってないな
737 名前:デフォルトの名無しさん mailto:sage [2008/02/14(木) 00:12:08 ] そうだな、解るように言ってやれ
738 名前:デフォルトの名無しさん mailto:sage [2008/02/15(金) 21:53:59 ] var fso= WScript.CreateObject("Scripting.FileSystemObject"); var d = fso.GetDrive(fso.GetDriveName("Q:\\")); if(d.IsReady){ ... とやってDVD-ROMドライブが準備できているかどうか調べているのですが、 DVDを入れて認識している最中にIsReadyが実行されるとウィンドウズ自体が数秒止まってしまいます バックグラウンドで動かしていてもフォアグラウンドアプリまで停止してしまうので困っているのですが これを回避するにはどうしたらいいのでしょうか?
739 名前:デフォルトの名無しさん mailto:sage [2008/02/15(金) 22:14:09 ] FSOで問題あるときはShell.Applicationを使ってみるのが定石
740 名前:デフォルトの名無しさん [2008/02/16(土) 06:37:35 ] ドアラ グッドウィルドームに立つ! 再生:654,421 | コメント:123,256 | マイリスト:20,510 www.nicovideo.jp/watch/sm354359 凄い勢いで踊るドアラ 再生:482,525 | コメント:28,129 | マイリスト:17,837 www.nicovideo.jp/watch/sm1489303 ドアラが異端になった経緯 再生:424,284 | コメント:36,521 | マイリスト:9,417 www.nicovideo.jp/watch/sm378355 ドアラーズブートキャンプ 再生:241,338 | コメント:18,996 | マイリスト:7,229 www.nicovideo.jp/watch/sm409082
741 名前:デフォルトの名無しさん mailto:sage [2008/02/16(土) 13:36:40 ] >>738 ドライブ認識動作中にエクスプローラとかでドライブにアクセスしても凍るから アクセスするタイミング悪いと凍るのは仕様じゃね? >>739 Shell.ApplicationにIsReadyはないけどな
742 名前:デフォルトの名無しさん mailto:sage [2008/02/16(土) 17:20:40 ] Shell.Applicationで取れる情報で変化するものを見つければ?
743 名前:デフォルトの名無しさん mailto:sage [2008/02/18(月) 16:30:09 ] Sub プロシージャとFunction プロシージャの違いって Function プロシージャが戻り値を返すのに対してSub プロシージャが値を返さないって言うだけですか?
744 名前:デフォルトの名無しさん mailto:sage [2008/02/18(月) 16:51:11 ] End XXX Exit XXX がちがう
745 名前:デフォルトの名無しさん mailto:sage [2008/02/18(月) 19:34:19 ] >>744 End Sub End Function が違うって言うのは分かりますし、Functionの場合のみ Function名 = 値 で値を返す事が出来る のも分かりますが(Javaで言うコンストラクタに値代入したらreturn文みたいな振る舞いすんのな) Exit Sub Exit Function というのがあるのですか?それはいったいどういう・・・? 単に終わらせるだけですか? 呼び出し元に戻りますか?
746 名前:デフォルトの名無しさん mailto:sage [2008/02/18(月) 21:25:12 ] Javaなんかのreturnみたいにプロシージャの呼出元へ戻るだけ。
747 名前:デフォルトの名無しさん mailto:sage [2008/02/18(月) 21:50:22 ] >>745 ヘルプも見れないのか
748 名前:デフォルトの名無しさん mailto:sage [2008/02/19(火) 22:10:48 ] WSH(拡張子.vbsのファイル)で カレンダを表示するプログラムを作成しました。 出力はMsgBoxでしてます。 こんなかんじ MsgBox strResult, , "カレンダ" これを、携帯電話からも実行できるようにしたいと考えました。 携帯のカレンダがあるじゃないかと言われると困るのですが・・・ 便宜上カレンダと言っているだけで、実際は他の物を出力するので。 イメージ的にはカレンダというと一番伝わりやすいので・・・。 で、そのアイディアとして、サイト上に掲載すればいいと考えました。 携帯のブラウザからそのサイトにアクセスした際に.vbsで作ったのと同じような出力が 得られれば良いのですが、これを実現するのに簡単な方法は無いでしょうか? 今のところ私に考え付くのは JavaScriptを勉強してJavaScriptに書き直して やるぐらいかなぁと思っているのですが、そんな事しないとやっぱ出来ませんか? そうなると関数とか文法とかいろいろ勝手が違うでしょうから覚え直しですかね?・・。 .vbsファイルの出力のWeb版を作りたいみたいな感じです。よろしくお願いします。
749 名前:デフォルトの名無しさん mailto:sage [2008/02/19(火) 22:16:13 ] 携帯もまだJavaScriptは実行できないぞ。 ASPと言って、Windowsサーバ上でVBScriptやJScriptをCGIのように実行する環境があった。 お前が欲しいのはきっとそれに違いない。 問題は、世間がASP.NETへ移行しつつあるということ。 ASP.NETはC#とかVB.NETとかを使うまた別物。
750 名前:デフォルトの名無しさん mailto:sage [2008/02/19(火) 23:00:35 ] >>749 .vbsファイルを携帯に渡しても実行できるわけないし、じゃあ現状だと携帯でコレを実現 するのは難しいんでしょうか? 仮に携帯で実現するのが難しいとして、ブラウザに実装・・と言うか 第三者がWebブラウザでアクセスしてきた時に表示するようなのは JavaScriptになりますかね?
751 名前:デフォルトの名無しさん mailto:sage [2008/02/19(火) 23:01:39 ] すれ違い よそへいけ
752 名前:デフォルトの名無しさん mailto:sage [2008/02/19(火) 23:02:43 ] それって、なんか実行時に入力するパラメータあるんかな? ないんならタスクマネージャで定期的に実行して、 TXTかHTMLに出力したのをサーバに自動アップするような環境をつくって、 携帯でそれを見に行けばいいような気がするが。
753 名前:デフォルトの名無しさん mailto:sage [2008/02/19(火) 23:12:23 ] >>752 おお!なんか凄いアイディア聴けた! えっとですね、1日に1回更新されるので、1日に1回実行してやればいいですね。 後はそれをTXT・・・には出来るのかなぁ・・・ ああ、そうか MsgBoxじゃなくてFileに出力 してやればいいんだ・・・ ああ、HTMLからそのTXTにリンクを貼るってのもありだし、 HTMLの中にそのTXTの内容を直接埋め込むのもありか!凄い!なるほど! ちょっと試行錯誤してみます。ありがとうございましたっ!
754 名前:デフォルトの名無しさん mailto:sage [2008/02/19(火) 23:27:45 ] >>752 ありがとうございました! Dim objFso, txtFile Set objFso = WScript.CreateObject("Scripting.FileSystemObject") Set txtFile = objFso.OpenTextFile("hogehoge.txt", 2, True) txtFile.Write strResult txtFile.Close Set txtFile = Nothing Set objFso = Nothing こんなコードで生成できました!後はこの.txtファイルにHTMLでリンク貼れば完璧! 本当にお世話になりました〜
755 名前:デフォルトの名無しさん mailto:sage [2008/02/19(火) 23:57:23 ] >>753-754 ただのテキストを吐き出すついでにHTMLにすればいいんじゃないの?
756 名前:デフォルトの名無しさん mailto:sage [2008/02/20(水) 00:29:27 ] >>755 いやーそれが、やろうと思ったのですが、出来なくて・・・。 やろうと思ったらかなり大変だと思いますが、簡単に出来るもんでしょうか?
757 名前:756 mailto:sage [2008/02/20(水) 00:30:22 ] Replace strOutStrings, vbCrLf, "<br>" とかやって、改行を<br>に置き換えようとかやってみたんですが、うまくいきませんでした。
758 名前:デフォルトの名無しさん mailto:sage [2008/02/20(水) 00:47:19 ] >>756 With txtFile .Write "<!DOCTYPE HTML PUBLIC ""-//W3C//DTD HTML 4.01 Transitional//EN"" ""www.w3.org/TR/html4/loose.dtd "">" .Write "<html lang=""ja"">" ... End With こんな感じで書き出せばいいだけだろ。 >>757 そのテキストをpre要素の中に入れてしまうというのはどうだ?
759 名前:デフォルトの名無しさん [2008/02/20(水) 00:47:33 ] Dim objFso, txtFile Set objFso = WScript.CreateObject("Scripting.FileSystemObject") Set txtFile = objFso.OpenTextFile("hogehoge.htm", 2, True) txtFile.Write "<HEAD><TITLE>うんこやろ〜</HEAD></HEAD>" txtFile.Write "<BODY>" txtFile.Write "<CENTER>なんか文句あっか!</CENTER>" txtFile.Write "</BODY>" txtFile.Close Set txtFile = Nothing Set objFso = Nothing
760 名前:デフォルトの名無しさん [2008/02/20(水) 00:51:57 ] そういえばむかし、こんなんやってたな。 10 OPEN "INDEX.HTM" FOR OUTPUT AS #1 20 PRINT #1,"<HEAD><TITLE>ハナクソ</TITLE></HEAD>" 30 PRINT #1,"<BODY>" 40 PRINT #1,"<CENTER>うんこちんちん!</CENTER>" 70 PRINT #1,"</BODY>" 90 CLOSE #1 100 SYSTEM これを N88BASIC.EXE /T:RUN"HOGE.BAS" で定期的に動かして コンテンツを更新してた。 古きよき時代。
761 名前:756 mailto:sage [2008/02/20(水) 16:22:22 ] >>758 それやろうとしたんですが、HTMLファイル中の" を ""と置き換えないといけないのが面倒でした。 HTMLって意外と"を使いますし。 それに.txtファイルに出力してしまって HTMLからリンクを貼るだけの方がとても楽だったので・・。 それにしてもWithステートメントかぁ、ヘルプを見て初めて知りましたが、こんな便利なのが あったんですね。今までだったら txtFile. を何度も書かないといけなかったのに、これを知った おかげで完全修飾しなくてすむからもっとコードが楽にスッキリかけそうです。ありがとうございます。 >そのテキストをpre要素の中に入れてしまうというのはどうだ? これもまた素晴らしいアイディアだと思います。考え付きませんでした。 確かにそれなら簡単ですね。なるほどなるほど・・・。 しかしどうして>>757 のコードで 改行が <br> に置き換わらないのでしょうか? >>759 >txtFile.Write "<HEAD><TITLE>うんこやろ〜</HEAD></HEAD>" この行</HEAD>が2個あります。</TITLE>の間違いでしょうか(内側のHEAD) >>760 へぇ・・・そんな時代があったんですかぁ〜・・・。
762 名前:デフォルトの名無しさん mailto:sage [2008/02/20(水) 16:34:20 ] Replaceは結果を戻り値に返すからこう使わないといけないはず。 strOutStrings = Replace(strOutStrings, vbCrLf, "<br>") ""がうざいのは、 ダブルクォーテーションではなくシングルクォーテーションを使うとか、 (属性はシングルでいい。でもDOCTYPEはわからない) 先頭(head要素が終わるまでくらい)をテキストに用意しておいて、 txtFileの頭にそれを書き出すとかでどう。 .Write objFso.OpenTextFile("c:\header.txt", 1).ReadAll
763 名前:デフォルトの名無しさん mailto:sage [2008/02/20(水) 16:46:23 ] >HTMLって意外と"を使いますし。 ならJScriptつかえよ HTMLタグをつけるメソッドもあるし
764 名前:デフォルトの名無しさん mailto:sage [2008/02/20(水) 17:58:02 ] >>763 DOMのことならVBScriptからでも使えるだろ。
765 名前:デフォルトの名無しさん mailto:sage [2008/02/20(水) 18:18:23 ] Stringオブジェクトのことだろ
766 名前:デフォルトの名無しさん mailto:sage [2008/02/20(水) 18:45:06 ] でもあまり使えるメソッドがないな
767 名前:デフォルトの名無しさん mailto:sage [2008/02/20(水) 19:49:38 ] HTMLタグをつけるメソッドを付けた奴は、きっと浮かれ過ぎていたんだろうな。 後でcreat以上に恥ずかしい思いをしたに違いない。
768 名前:デフォルトの名無しさん mailto:sage [2008/02/20(水) 20:09:23 ] JScriptだから好きなメソッドが追加できるよ .quote()なんてのもいいんじゃね
769 名前:デフォルトの名無しさん mailto:sage [2008/02/20(水) 20:15:50 ] anchor(anchorString), big(), blink(). bold(), fixed(), fontcolor(colorVal), fontsize(intSize), italics(), link(linkstring), small(), strike(), sub(), sup() 確かに今更これらを使う気にならない
770 名前:756 mailto:sage [2008/02/20(水) 22:51:33 ] >>762 >strOutStrings = Replace(strOutStrings, vbCrLf, "<br>") あ、なるほど、確かにそうだ・・・失敗失敗・・・。 >先頭(head要素が終わるまでくらい)をテキストに用意しておいて、 txtFileの頭にそれを書き出すとかでどう。 なるほどねぇ・・・参考になります。 >>763 JScript使った事無いので全然知りません。 >>769 が言っている事がさっぱり分からない・・・
771 名前:デフォルトの名無しさん mailto:sage [2008/02/20(水) 23:13:16 ] 俺もJScriptは使わないけど、ヘルプはあるんでJScriptのヘルプより抜粋。 > anchor メソッド参 照 > link メソッド| String Object メソッド | String Object プロパティ > > 対象: String オブジェクト > 必要条件 > バージョン 1 > String オブジェクトに格納されている文字列の前後に HTML の NAME 属性を指定する <A> タグを挿入します。 > > strVariable.anchor(anchorString) > 引数 > strVariable > 必ず指定します。String オブジェクトの名前またはリテラルを指定します。 > anchorString > 必ず指定します。アンカー タグの NAME 属性に挿入する文字列を指定します。 > 解説 > anchor メソッドを呼び出すと、String オブジェクトから名前付きアンカーが作成されます。anchor メソッドの使用例を次に示します。 > > var strVariable = "これはアンカーです"; > strVariable = strVariable.anchor("Anchor1"); > 2 つ目のステートメントの実行後、変数 strVariable は次の値になります。 > > <A NAME="Anchor1">これはアンカーです</A> > このメソッドの実行時には、<A> タグが既に元の文字列内にあるかどうかの確認は行われません。 後の関数も似たようなもんだろ。さすがにこれはどうかね・・・
772 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 10:32:49 ] BASP21のSpaceメソッドほどではない。 # あれは馬場さん自身「作者の無知からくる全くのゴミメソッド」なんておっしゃってたな...
773 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 10:43:06 ] |BASP21メソッド編 | 1. BASP21のSpaceメソッドはなんであるの | えーとこれは、作者の無知からくる全くのゴミメソッドです。 | HTML でスペースをあけるのに全角のスペースを使うことがありますが、 | IMEでなぜか入力できなかったから(IMEのプロパティが半角スペースになっていただけ)。 | たぶん、誰も使ってないと思いますがどうでしょう。 babaq さんオッチョコチョイ杉ワロタ せっかくだから今度どこかで無理矢理にでも使ってあげようっと
774 名前:デフォルトの名無しさん [2008/02/23(土) 12:50:03 ] あれはあれで便利だからなくさないで欲しい
775 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 13:30:14 ] 吉岡照雄のOn Error Resume Nextの正しい使い方とやらを読んだんだが、 こんな面倒なことをしないといけないのか・・・
776 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 15:11:12 ] >>775 On Error Resume Nextの正しい使い方教えて〜
777 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 15:23:10 ] Subプロシージャを毎回作るのはいいけど、さらに複数行の時は入れ子。。。 Subプロシージャだらけになって大変すぎ
778 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 16:39:25 ] ファイルの日付をデータベース(ACCESS)に格納できねぇーー strSQL = "INSERT INTO Log " & _ " (Name " & _ " ,Date " & _ " ,SIZE) " & _ "VALUES ('" & fol.Name & "'" & _ " ,#" & fol.DateCreated & "#" &_ '←ここがおかしいらしい " ," & fol.Size & ")" なんか 『Insert into ステートメント の 構文エラーです』 とか出るんだけどなにがおかしいのか・・・
779 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 17:27:26 ] 文字列にフォーマットし直してから渡せ
780 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 18:51:51 ] はぁー?
781 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 18:55:22 ] 問題はそのフォーマットだろ
782 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 19:22:20 ] SQLの構文に合った書式に変換されるとは限らないってこった。 一旦、年月日時分秒をバラバラにして、構文に合わせた書式に作り替えればいい。 書式は自分で調べてくれ。
783 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 20:40:43 ] #mm/dd/yyyy hh:mm:ss# で渡すといいよ。VBScriptはFormat関数ないから面倒だ。
784 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 21:39:48 ] コードそのままで[地域のプロパティ] を変更するといいよ
785 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 22:21:37 ] capicom.dllが再頒布可能かどうかが調べてもさっぱり分からないんだが
786 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 22:31:22 ] WSHってマウスクリックも出来ないし、.SendKeysメソッドで日本語扱えないしで やっぱりAutoHotKeyには到底かなわない?
787 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 22:40:13 ] >>785 www.microsoft.com/downloads/details.aspx?FamilyID=860ee43a-a843-462f-abb5-ff88ea5896f6&displaylang=ja このパッケージには、CAPICOM 2.1.0.1 の再頒布可能なファイルとそのサンプルが含まれています。
788 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 22:47:45 ] >>787 そこだけみると、間違いなく再頒布可能なファイル=CAPICOM.dllな気がするんだが、 DLしてライセンス(英語)を読むと、 再頒布可能なのは、REDIST.TXTに記載されたものと書いてあるが、 REDIST.TXTなんてどこにもない・・・ ググってもググってもはっきりどこにも書いてないorz
789 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 23:40:10 ] >>788 msdn2.microsoft.com/en-us/library/ms995332.aspx ここだと「再配布可能な CAPICOM ActiveX control」と表現してる。 Platform SDK で CAPICOM で ActiveX control なのは capicom.dll しかないので限定できる。 The Platform SDK contains CAPICOM samples, API documentation, and the redistributable CAPICOM ActiveX control. というか考えすぎと思う。 再配布して意味のあるものは capicom.dll しかないんだし。
790 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 23:43:07 ] >>779 #とか'とか何度もやったし >>781 Accessに設定したフォーマットは、yyyy/mm/dd hh:mm:ssで、 DateCreatedも書式一緒だからそのままにした >>782 ,783 Dim day, m, n, strDt, strEd strDt = "2090/02/23 00:00:00" day = Split(strDate, " ") m = Split(day(0),"/") n = Split(day(1), ":") strEd = m(1) & "/" & m(2) & "/" & m(0) & " " & n(0) & ":" & n(1) & ":" & n(2) WScript.Echo strCom 煩雑だ >>784 [英国]とか[米国]でもダメだけどorz フィールド名にDateはダメだったの? Dateから日付に直したらできたよ ふぉぉぉぉぉっふぉおおおっ!!
791 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 00:08:27 ] >>789 確かにそういうことですね。私の考えすぎでした。 これで、capicom.dllを一緒に配布できるってことか。 一緒に配布している例が見あたらなくって、 どうしてMicrosoftからDLさせるところばっかりなんだろう?と、思ってました。 どーもです。
792 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 00:26:28 ] >>791 >どうしてMicrosoftからDLさせるところばっかりなんだろう?と、思ってました。 これについてはセキュリティリスクが関係すると思う。 同梱は可能であっても、同梱してしまうとバグやセキュリティ問題で capicom が更新されたとき、 企業責任として製品自体の更新版を出すことを検討しなければならない。 別途ダウンロードさせる場合にはそれは必要ない。
793 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 02:28:06 ] >>786 の質問に答えてくだされ・・・・
794 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 02:34:26 ] そうです、WSHはうんこです。AHKの足元にも及びません。AHKが最高です。よかったね。
795 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 09:26:00 ] AHK >>>>>>>>>>>>>>>>>>>>> マウス操作がデフォでできない言語 こんな定義でおk?AHKってどんだけ凄いんだよ(w
796 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 09:40:34 ] 全盛期のAHK伝説でも貼る流れか?
797 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 10:05:09 ] AHKは本当に凄いですよ?AHKにWSHが勝てる点って デフォルトでWindowsに入ってる 標準環境っていうぐらいじゃないですかね?
798 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 10:24:06 ] デフォルトでWindowsに入ってる標準環境>>>(越えられない壁)>>>インストール
799 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 13:03:14 ] AHKのおかげで身長が2m伸びました
800 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 13:06:38 ] AHKから受信料の請求がきましたが、どうすればいいのでしょうか
801 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 13:29:44 ] >>800 テレビの横に古いパソコンを置いて「これはパソコンモニタです」って言い張れ。
802 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 13:43:11 ] >>786 >>793 >>797 暇でネタ振ってるんだと思うけど、それならそれで以下を回答してくれ。 ・WSHとは何か、具体的に。 ・どのように比較してその結論に達したか。
803 名前:デフォルトの名無しさん [2008/02/24(日) 15:12:23 ] A ア H ホ K か?
804 名前:797 mailto:sage [2008/02/24(日) 16:47:52 ] >>802 WSHとはWindows Script Hostingの事で、拡張子 .vbsのファイルにして実行できる Windowsのスクリプト(Batとは違うのだよ、Batとは!)です。 Linuxで言うShell Scriptみたいなものかと思っています。 比較は、やはりマウスクリックですね。操作の自動化をしたいので、GUIアプリケーションを操作 する際に、Alt + Key みたいな感じにキーが割り当てられてない、クリックでしか出来ない操作を 自動化しようとするときにWSHだと無理なんですよ。 それと .SendKeysメソッド。日本語を送信できないなんて論外です。 その点AHKなら日本語も送信できるしマウスクリックも出来るし、記述が簡単(インスタンス生成 とか面倒な事しなくても簡単な記述でいい、ただし引数の多さがたまに傷かな)な所が良いと思います。 こんな感じでしょうか?
805 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 17:22:37 ] WSHはオートメーションオブジェクトの操作がメインだったりする。 他のアプリの制御はアウトプロセスサーバとして制御してくれ、って方針。 Perlが標準入出力の扱いに最適化されているように、 ATKはGUIアプリの操作シミュレートによる制御に最適化されている、と。 ATKはWMIの制御やりにくいから糞、とか言われても困るだろ?
806 名前:797 mailto:sage [2008/02/24(日) 17:52:35 ] >>805 1行目、2行目、5行目の貴方の言っている事がスキルの低い私には理解できません・・・。 意味が分からないです・・・。すみません。