[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 05/19 09:09 / Filesize : 210 KB / Number-of Response : 969
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

WSH(・∀・)スレッド! Part 4



1 名前:デフォルトの名無しさん mailto:sage [2009/05/24(日) 01:22:48 ]
( ´ゝ`) 誰か詳しい情報キボンヌ

●過去スレ
WSH(・∀・)スレッド!
pc11.2ch.net/test/read.cgi/tech/1055075469/
WSH(・∀・)スレッド! Part 2
pc11.2ch.net/test/read.cgi/tech/1176698934/
WSH(・∀・)スレッド! Part 3
pc12.2ch.net/test/read.cgi/tech/1208948450/

●関連スレ
お前ら、wsh使ってますか? Part7
pc12.2ch.net/test/read.cgi/win/1190548945/
HTAをもっと流行らせる計画 Part2
pc12.2ch.net/test/read.cgi/tech/1220874815/
★WSHでCGI★JScriptVBScript
pc11.2ch.net/test/read.cgi/php/1059745064/

●公式サイト
Windows Script
www.microsoft.com/japan/msdn/scripting/

●個人サイト
Windows Scripting Host
homepage3.nifty.com/aya_js/wsh/index.htm
Windows Scripting Host Laboratory
www.roy.hi-ho.ne.jp/mutaguchi/wsh/
Windows Script Wiki
winscript.s41.xrea.com/wiki/index.php

710 名前:デフォルトの名無しさん mailto:sage [2011/08/06(土) 13:52:56.48 ]
>>705
フォルダー名が違うとか、そんなんじゃないの?

Pathの組み立てに、
Path = Folder & "\" & Filename
とか、安易にやっちゃってんじゃないの?
Path = FSO.BuildPath(Folder, Filename)
ってやった方がいいよ


711 名前:デフォルトの名無しさん mailto:sage [2011/08/06(土) 14:29:32.35 ]
えすパー自慢?

712 名前:デフォルトの名無しさん mailto:sage [2011/08/07(日) 01:47:18.64 ]
>>686
これどうよ?
journal.mycom.co.jp/column/winvista/005/index.html

713 名前:デフォルトの名無しさん mailto:sage [2011/08/11(木) 08:54:36.23 ]
CopyHereって、失敗しても何も言わないの?
zipファイルの中にコピーしようとしてるんだけど、
コピーできてないのになんのエラーも出さずに終わる

ちゃんと圧縮待ちはしてるのに

714 名前:713 mailto:sage [2011/08/11(木) 10:05:47.92 ]
追記
圧縮待ちは、下の2通りをためしました
・Items().Countが増えるまで待つ
 →いくら待っても増えなかった
・1秒待ってからOpenTextFile(zipfile,8,FALSE)でエラーなく開けるまで待つ
 →すぐに開けてしまった

715 名前:デフォルトの名無しさん mailto:sage [2011/08/11(木) 21:22:37.44 ]
まっそういうもんだな

716 名前:705 [2011/08/13(土) 18:07:34.54 ]
えーと、705です。

社のPCにあるので、コード全文はのせられないん(持ち出せない)だけど、ファイルを検索する部分は
ttp://md1000.cocolog-nifty.com/blog/2008/09/wsh-5d65.html
のコードを流用しています。
ファイルが見つかったら、のところで、

For Each temp2 In f.Files
Ext = LCase(FS.GetExtensionName(FoundFile))

Next


アクセス権にも問題はありません。



717 名前:705 [2011/08/13(土) 18:15:11.57 ]
途中で書き込んでしもた

For Each temp2 In f.Files
Ext = LCase(FS.GetExtensionName(FoundFile))
if Ext="txt" then
TextCheck(temp2)
enf if
Next

みたいな感じで、このTextCheckというのが、テキストの全文検索ルーチンです。

引数のテキストファイルを一時ファイルにコピーして内容を検査する、という処理ですが、アクセス権にも問題が無く、実際に存在しているのに「書き込めません」とかってエラーになる。
でも、実際には一時ファイルはその都度作成しています。
いくつか検証したら、xpの場合、必ず同じフォルダでエラーを起こす。また、7の場合だと、"Application Data\Application Data...."の無限ジャンクションで処理を勝手に辞めてしまって終了してしまいます。
とにかく、ドライブ中の、アクセス権があるテキストファイルをまんべんなく検索して処理する、というのがうまくいっていないみたいです。

このTextCheckルーチン自体を単体のスクリプトとして動作させた場合には問題がないので、原因とは考えられません。

718 名前:デフォルトの名無しさん mailto:sage [2011/08/13(土) 18:32:10.65 ]
>>717
「GetExtensionNameで拡張子をとってみてtxtだったら
 TextCheck() というサブルーチンに投げてる」
ってだけ?
エラー内容の方が大事なんだが

>現実に存在していて、アクセス中でも隠しファイルでもない
>普通のファイルが「見つからない」といって53のエラーを
>はき出す事が頻繁に発生する。
どこでエラーが出てるか確認してみたら?
GetExtensionNameの時にエラーが出てるんか?
取ろうとしてるフォルダは普通の場所なんだよね。
Application Data とか普通じゃない雰囲気がぷんぷんするんだが。



719 名前:デフォルトの名無しさん mailto:sage [2011/08/14(日) 21:06:52.69 ]
FoundFileに何を設定してんのかな?

720 名前:705 [2011/08/15(月) 11:14:29.92 ]
あ、失礼。Foundfileはtemp2。


721 名前:デフォルトの名無しさん mailto:sage [2011/08/15(月) 16:11:15.08 ]
temp2のデフォルトプロパティはなんだっけ?

722 名前:デフォルトの名無しさん mailto:sage [2011/08/15(月) 17:34:31.19 ]
つーか、書き込めないって事は、テンポラリーフォルダーへのコピーに失敗してるんじゃないの?

TextCheckのルーチン内に原因があったりしてな


723 名前:デフォルトの名無しさん mailto:sage [2011/08/15(月) 21:41:07.64 ]
圧縮ファイルをテンポラリに解凍して、解凍ファイルを読みに行く処理を書いた時
「ファイルが見つからない」ってなるユーザーがいて、その時はウエイトを掛けて
回避した。

724 名前:デフォルトの名無しさん mailto:sage [2011/08/16(火) 15:40:06.08 ]
>>716
>ttp://md1000.cocolog-nifty.com/blog/2008/09/wsh-5d65.html
>のコードを流用しています。

みたけどやめとけ ましなサイトがあるだろ 

725 名前:デフォルトの名無しさん mailto:sage [2011/08/16(火) 16:03:46.63 ]
>>717
いたるところにログを書き出すルーチン組み込んでみれ。

726 名前:デフォルトの名無しさん mailto:sage [2011/08/16(火) 19:22:32.45 ]
ファイル列挙中のフォルダの配下のファイルを操作したせいで、
列挙処理がおかしくなってるとか


727 名前:デフォルトの名無しさん mailto:sage [2011/08/17(水) 09:07:29.77 ]
一つ疑問なんだが、一時コピーする必要はあるのか?
本体そのものにアクセスするんじゃまずいわけがあるの?

もしかして他のアプリが開いてる可能性のあるログファイルの類なんじゃ…
ロックされててアクセスできないとか。

728 名前:705 [2011/08/18(木) 21:25:22.77 ]
皆さん、ありがとうございます。取り急ぎ、レスへの回答です。

>>727
えーと、一時コピーする理由は、本体を必要とする他のアプリに影響を与えないようにスナップショットを取るためです。
ただし、この処理を行うときは、他の常駐アプリやサービスはウィルス検査等も含め、停止させています。

>>726
それはないです。過去に作成したきりで、全くアクセスしていないファイルでも同じように発生します。

>>725
ログじゃないですが、stopでデバッガが起動する、という事らしいのですが私の環境ではデバッガのデの字も起動しません。
もちろん、デバッガ本体はインスコしてますが、7には非対応とか?

>>723
ウェイトと、あと無限ループでファイルのコピーが終わったら次の処理、というのは試してみましたが、結果は同じでした。



729 名前:デフォルトの名無しさん mailto:sage [2011/08/19(金) 09:34:14.95 ]
>>728
起動しないデバッガで、何をするつもりなの?
甘えてないで、ログ取れば?


730 名前:デフォルトの名無しさん mailto:sage [2011/08/19(金) 10:27:26.30 ]
>>705
そもそもどんなエラーメッセージが出力されているかもわからず回答できるわけが無い。
デバッガを起動できないならログ出力の関数を自作してデバッグすればいいだけのこと。
ログ出力の関数のコードすら書けないということなら論外。

もしかしてalertさえも使ったこと無いのか?

731 名前:デフォルトの名無しさん mailto:sage [2011/08/19(金) 21:53:28.77 ]
見てて、あると思うか?

732 名前:デフォルトの名無しさん mailto:sage [2011/08/20(土) 06:47:48.55 ]
>>731
無いと思うw

733 名前:705 [2011/08/20(土) 11:29:25.11 ]
>>729
処理の至る所にログ吐き出し処理を入れてみました。やはり、ちゃんと存在していて、アクセスされていないディレクトリをを削除しようとしているときに「書き込みできません」になったりしてます。
でも、そのディレクトリを削除するためだけのスクリプトを別に作って削除したらちゃんと削除できるんですよね。
つまり、[削除前処理]→[フォルダ削除]ってやろうとしているときに、じつは[削除前処理]が終わっていないって事なんでしょうか。

>>730
alertは使ったことないですが、msgboxでErr.Descriptionを表示させてます。

734 名前:デフォルトの名無しさん mailto:sage [2011/08/20(土) 16:19:24.86 ]
いつからディレクトリ削除の話になったんだ?
それなら十中八九まるまるに決まってるじゃん
でも問題を後出しにするような奴には教えん

735 名前:デフォルトの名無しさん mailto:sage [2011/08/20(土) 17:34:34.61 ]
>>705
自分で解決しようっていう意思が全く無いなw
ここで嘘でもいいからそうだって言われれば安心するならあえて言おう。

甘ったれるなw

736 名前:デフォルトの名無しさん mailto:sage [2011/08/20(土) 19:30:19.14 ]
サイトの自己宣伝だろw
他人が参考にするようなもんじゃないもの

737 名前:デフォルトの名無しさん mailto:sage [2011/08/20(土) 19:31:23.31 ]
そうだな レベルが合ってる 偶然にしては出来過ぎだな

738 名前:デフォルトの名無しさん mailto:sage [2011/08/20(土) 23:06:12.16 ]
>>733
>>710が、すげーヒントをくれてるのに、何で無視してるん?
まじ、自分でやる気がないのな



739 名前:デフォルトの名無しさん mailto:sage [2011/08/21(日) 00:49:16.37 ]
そういえば、処理完了前に次の処理をしようとしたせいで上手くいかないって状態の時に
原因解明のためにMsgBox出したら、それによって処理かぶりが無くなってしまい
「観測すると現象が起きなくなる」
という、まるで量子力学かのような状態になって アルェー って成ったことが
みんな一度はあるんじゃないか?

直ぐ気づくというか、こうなった時点で答えが分かるようなもんだけど。

740 名前:デフォルトの名無しさん mailto:sage [2011/08/21(日) 04:20:17.43 ]
HDDの"ディスクの書き込みキャッシュを有効にする"って設定は関係あったりするの?

741 名前:デフォルトの名無しさん mailto:sage [2011/08/21(日) 05:21:42.24 ]
関係ないと思うが。

742 名前:デフォルトの名無しさん mailto:sage [2011/08/21(日) 05:27:57.08 ]
聞 く 前 に 何 で 試 さ な い の か ?

743 名前:デフォルトの名無しさん mailto:sage [2011/08/23(火) 13:50:48.70 ]
め ん ど う だ か ら

744 名前:デフォルトの名無しさん mailto:sage [2011/08/25(木) 12:58:23.99 ]
つまりそれは、出来ないんじゃなくて
やらないだけだな

もういいだろ

745 名前:デフォルトの名無しさん mailto:sage [2011/08/26(金) 10:52:22.28 ]
t

746 名前:デフォルトの名無しさん mailto:sage [2011/09/05(月) 17:53:14.02 ]
WindowsXPを使用しています。

WSHから外部アプリケーション(例えばメモ帳)を起動するときに
起動位置を座標指定して起動することはできないのでしょうか?
できるようであれば方法を教えて下さい。

747 名前:デフォルトの名無しさん mailto:sage [2011/09/05(月) 18:31:55.20 ]
>>746
Win32使えばできる
WSHじゃないけど、ここが参考になるかも
dobon.net/vb/dotnet/process/movewindow.html

748 名前:デフォルトの名無しさん mailto:sage [2011/09/05(月) 20:16:04.41 ]
Win32って、Win32APIのことかな?
わざわざWin32APIなんて使わなくても、WMIで出来るよ
そもそもWin32APIはWSHから直接使えないしw



749 名前:デフォルトの名無しさん mailto:sage [2011/09/05(月) 20:53:02.38 ]
うそだろ

750 名前:デフォルトの名無しさん mailto:sage [2011/09/05(月) 20:54:12.05 ]
WSHからPowerShellをキックすりゃえーよ

751 名前:746 mailto:sage [2011/09/05(月) 21:32:39.78 ]
レスありがとうございます。

>>747
WSHからWin32APIを使用する方法がわからず、参考URLを元に
VB.NETで作っているところです。

>>748,750
PowerShellからもできるんですね。WSHというこだわりはないので
(ショートカットをダブルクリックしたら指定プログラムを指定座標で起動したい)
PowerShellでの方法も調べてみます。
WMIの存在もはじめて知りました。こちらも調べてみます。

752 名前:デフォルトの名無しさん mailto:sage [2011/09/05(月) 21:37:04.60 ]
>>750
それ「直接」じゃないでしょ。

753 名前:デフォルトの名無しさん mailto:sage [2011/09/05(月) 21:49:57.56 ]
>>750
WSHやめてRubyやPythonにした方がいいね


754 名前:デフォルトの名無しさん mailto:sage [2011/09/05(月) 22:08:49.01 ]
>>749
何が嘘だと?
WMIで出来るのは事実だし、WSHからWin32APIが直接呼べないのも間違いじゃないだろ。

755 名前:デフォルトの名無しさん mailto:sage [2011/09/06(火) 12:40:38.37 ]
>752
WSHで「直接」なんて意味ないでしょ。なんだって間接でしょ?

756 名前:デフォルトの名無しさん mailto:sage [2011/09/07(水) 00:16:33.27 ]
WSH から PowerShell は、「直接」呼べるけど、PowerShell スクリプトは、PowerShell を
通して「間接」的に実行するってことでしょ。

WSH は、どっかで Win32API の CreateProcess( ) { かどうかはわからんが、似たような
API } を使ってるから間接だという主張なの?

757 名前:デフォルトの名無しさん mailto:sage [2011/09/07(水) 02:44:28.20 ]
間接的に、呼び出した何かでどうこうするって話なら
なんぼでもやりようあるからな。

758 名前:デフォルトの名無しさん mailto:sage [2011/09/07(水) 12:52:38.10 ]
WindowsXpにて手動でデスクトップのアイコンを全て表示/非表示に切り替える事ができますが、
これでWSHで実装する事は可能でしょうか?

手動だとデスクトップで右クリック→i→dでできる操作をWSHで実装し、ショートカットアイコンにショートカットキーを
設けてキー操作で簡単に行いたいのです。
最悪SendKeysで、と思ったのですが、デスクトップ上で右クリックする際デスクトップアイコンにフォーカスが当たっていると
失敗してしまいます。因みに右クリックはSendKeys でShift+F10を実行している。



759 名前:デフォルトの名無しさん mailto:sage [2011/09/07(水) 14:34:39.36 ]
選択" "
解除"^ "

760 名前:デフォルトの名無しさん mailto:sage [2011/09/07(水) 14:58:23.96 ]
f5

761 名前:758 mailto:sage [2011/09/07(水) 18:41:42.93 ]
>>759
意味不明なり

>>760
更新じゃないです
アイコン非表示は手動でやれば直ぐ消えます
F5とか不要です

762 名前:デフォルトの名無しさん mailto:sage [2011/09/07(水) 20:22:40.18 ]
デスクトップアイコンにフォーカスが当たっていると
失敗してしまいます。

759 :デフォルトの名無しさん:2011/09/07(水) 14:34:39.36
選択" "
解除"^ "


760 :デフォルトの名無しさん:2011/09/07(水) 14:58:23.96
f5


763 名前:デフォルトの名無しさん mailto:sage [2011/09/07(水) 21:03:39.56 ]
ShellFolderView.SelectItem

764 名前:デフォルトの名無しさん mailto:sage [2011/09/07(水) 21:37:41.23 ]
hideicons

765 名前:デフォルトの名無しさん mailto:sage [2011/09/08(木) 08:27:21.55 ]
>>762-763
個人的にはSendKeysは使いたくなかったので理解できませんでした。すいません

>>764
レジストリをすっかり見落としていました
有り難う御座います
無事解決しそうです


766 名前:758 mailto:sage [2011/09/08(木) 10:14:52.72 ]
ダメだできない。分からない
>>759ってどう言う事なんでしょうか?
F5でアイコンフォーカスを外せる事は分かったのですが

767 名前:758 mailto:sage [2011/09/08(木) 10:17:29.55 ]
すいません、理解できました
sendkeysで実装するしかないんですかね、やっぱ

768 名前:デフォルトの名無しさん mailto:sage [2011/09/08(木) 14:28:25.53 ]
現状
var ws = WScript.CreateObject('WScript.Shell');
//デスクトップをを表示(こいつが上手く機能してくれない)
ws.run('C:\\hoge\\desktop.lnk');
WScript.Sleep(1000);
ws.SendKeys('{F5}');
WScrip.Sleep(1000);
ws.SendKeys('+{F10}');
WScript.Sleep(200);
ws.SendKeys('i');
WScript.Sleep(200);
ws.SendKeys('d');
しかもこれだとデスクトップ表示中には使えない
デスクトップ表示切り替えいい方法ないですかね?




769 名前:デフォルトの名無しさん mailto:sage [2011/09/08(木) 15:19:54.35 ]
なにが死体ん?

770 名前:758 mailto:sage [2011/09/08(木) 16:16:01.50 ]
>>768>>758です
すいません
やりたい事は>>758
結局sendkeysで実装中
で、問題が1点
デスクトップ上で>>768を実行すると上手くいきますが
別のウィンドウが立ち上がっているとアクティブウィンドウ上で>>758を走らせるだけなので失敗します
アクティブウィンドウがあるか?今現在デスクトップを表示しているのか?
を判定する術はありますでしょうか?

771 名前:デフォルトの名無しさん mailto:sage [2011/09/08(木) 16:22:30.35 ]
If ws.AppActivate("program manager") Then

772 名前:デフォルトの名無しさん mailto:sage [2011/09/08(木) 21:07:23.51 ]
レジストリ変えても反映されんな なんか方法ない?

773 名前:デフォルトの名無しさん mailto:sage [2011/09/08(木) 21:22:38.81 ]
面倒だから、vc++にしちゃいなよ。
#include <Windows.h>

int main(int argc, char* argv[])
{
HWND hWnd;
BOOL status;
hWnd = FindWindow("ProgMan",NULL);
status = ShowWindow(hWnd,SW_HIDE);
if(!status){
ShowWindow(hWnd,SW_SHOW);
}

return 0;
}

774 名前:デフォルトの名無しさん mailto:sage [2011/09/09(金) 01:09:48.28 ]
thx!

775 名前:デフォルトの名無しさん mailto:sage [2011/09/09(金) 14:57:24.17 ]
「デスクトップアイコンの表示」を切り替える。
ttp://scripting.cocolog-nifty.com/blog/2011/09/post-fa65.html

776 名前:758 mailto:sage [2011/09/10(土) 00:03:58.12 ]
>>775
有難う御座いました。目的が達成できました。
ソース内容がさっぱり理解できないのでググッて勉強致します。
日付的に考えて、ここを見ている方のブログか、>>775様本人のブログだと思いますが、
フィード登録させて頂きました。シンプルで見易いし、
私の欲しい情報と色々マッチする良いブログだと思いました。

ご存知かとは思いますが、
ブログにはデスクトップにアイコン置くと戻せないと、ありますが、
デスクトップにショートカットキーを設定したショートカットアイコンを設置しておくと
気軽にアイコン表示/非表示切替ができますよ。

因みにWindows7でも問題なく動きました。


777 名前:デフォルトの名無しさん mailto:sage [2011/09/12(月) 12:51:06.81 ]
>>775
オブジェクトねぇよってエラーになる
Administratorじゃなきゃダメ?

778 名前:デフォルトの名無しさん mailto:sage [2011/09/13(火) 15:12:01.15 ]
D&Dされたファイルを、特定ディレクトリ下にあるファイル名と前方一致するディレクトリに移動させて
ディレクトリ名の末尾に付いてる数字を+1するスクリプトを書きたいんだがどうすればいいのか、何から学べばいいのか分からない。



779 名前:デフォルトの名無しさん mailto:sage [2011/09/13(火) 15:21:08.72 ]
VBScript
FileSystemObject

780 名前:デフォルトの名無しさん mailto:sage [2011/09/13(火) 22:42:03.47 ]
JScriptにしとけ

781 名前:デフォルトの名無しさん mailto:sage [2011/09/14(水) 20:47:13.58 ]
はーい

782 名前:デフォルトの名無しさん mailto:sage [2011/09/15(木) 23:35:50.18 ]
教えてください。
今、写真ファイルに適当な名前がついていて、
これのファイル名を、
写真ファイル右クリック→プロパティ→詳細
で進んだ先の「タイトル」と同じものに変更したいと思っています。
そこで、GetFileで写真ファイルのオブジェクトを作った後に
どのようなプロパティで「タイトル」を取得すればよいですか?
よろしくお願いします。

win7 homeです

783 名前:デフォルトの名無しさん mailto:sage [2011/09/16(金) 01:10:33.97 ]
FolderItem.ExtendedProperty("System.Title")


784 名前:デフォルトの名無しさん mailto:sage [2011/09/16(金) 20:28:47.97 ]
ありがとうございます。
試してみます。

785 名前:デフォルトの名無しさん mailto:sage [2011/09/23(金) 18:45:42.41 ]
糞仕様、来んな

786 名前:デフォルトの名無しさん mailto:sage [2011/09/28(水) 23:48:14.94 ]
>>785
何が糞仕様なん?

787 名前:デフォルトの名無しさん mailto:sage [2011/09/29(木) 04:26:24.31 ]
来なかったから気にせんでもええ

788 名前:デフォルトの名無しさん mailto:sage [2011/09/30(金) 02:07:35.36 ]
来たよ



789 名前:デフォルトの名無しさん mailto:sage [2011/10/04(火) 21:40:59.02 ]
こっちくんな

790 名前:デフォルトの名無しさん mailto:sage [2011/10/05(水) 02:48:43.15 ]


791 名前:デフォルトの名無しさん mailto:sage [2011/10/10(月) 14:52:27.46 ]
テキスト変換で行き詰まってるんだけど、
たとえば、あ→こ、こ→て、て→あ、って処理をやろうとすると、
全部巡り巡って「あ」になってしまう現象を防いで置換するにはどうすればいい?
処理する量が膨大故に、あ→つ といった一時待避方法は使わずにできれば…

792 名前:デフォルトの名無しさん mailto:sage [2011/10/10(月) 16:23:12.60 ]
replaceで分けてやるからだろ
regexpで一度にやればええだろ

793 名前:デフォルトの名無しさん mailto:sage [2011/10/10(月) 17:14:00.83 ]
ううむ…すみません、Replaceさえ使わずに置換してた上、正規表現が判らない…
ネット見ながら書き直してみたけど、思った通りに動かない…

794 名前:デフォルトの名無しさん mailto:sage [2011/10/10(月) 18:20:30.32 ]
text.replace('a|b|c|d','g',function(a)
{
var ans='';
switch(a)
{
case 'a' :
ans='A';break;
case 'b' :
ans='B';break;
・・・
default:
ans='baka';
}
return ans;
});

795 名前:794 mailto:sage [2011/10/10(月) 19:20:12.25 ]
コッチの方が簡単か。
var map=[];
map['a']='A';
map['b']='B';
text.replace('a|b','g',function(a){return map[a];});

796 名前:デフォルトの名無しさん mailto:sage [2011/10/11(火) 09:30:25.79 ]
tr/// みたいなのが JS にもあればなあ

797 名前:デフォルトの名無しさん mailto:sage [2011/10/12(水) 03:58:23.22 ]
あるよ

798 名前:デフォルトの名無しさん mailto:sage [2011/10/13(木) 18:21:32.26 ]
>>794-795
動かんが?



799 名前:デフォルトの名無しさん mailto:sage [2011/10/13(木) 20:27:43.50 ]
こうか
text.replace(/a|b/g, function(a){return map[a];})

800 名前:デフォルトの名無しさん mailto:sage [2011/10/13(木) 20:33:49.25 ]
>>798
>>795じゃないけど正規表現の書き方が間違ってるので勝手に修正
テストはしていない

//textに処理対象文字列
var map=[];
//['置換したい文字']='置換後文字';
map['a']='A';
map['b']='B';
//hogeに置換後文字列値
hoge=text.replace(/a|b/ig,function(a){return map[a];});


801 名前:795 mailto:sage [2011/10/13(木) 21:00:47.60 ]
>>798-800
ごめんね。
DMonkeyで使えるから、Jscriptでも使えると思っていた。


802 名前:デフォルトの名無しさん mailto:sage [2011/10/13(木) 21:41:35.95 ]
var map={a:'A',b:'B'};


803 名前:デフォルトの名無しさん mailto:sage [2011/10/13(木) 22:09:27.16 ]
>>801
ドンマイ
正規表現を複雑にせずに置換処理する連想配列を使うこの方法は個人的に好きです
改修も簡単だしね

804 名前:デフォルトの名無しさん mailto:sage [2011/10/13(木) 22:26:26.37 ]
vbscriptがほとんどでjscriptはあんまり使ってなかったけど
無名関数が使えるのか…知らなかったorz

805 名前:デフォルトの名無しさん mailto:sage [2011/10/13(木) 23:03:37.97 ]
ドキュメント読め
msdn.microsoft.com/ja-jp/library/cc391867.aspx
function(x){return x*x;} // 関数リテラルです。


806 名前:デフォルトの名無しさん mailto:sage [2011/10/18(火) 17:31:58.84 ]
すいません、質問なんですが、例えばURLが
www.atmarkit.co.jp/fwin2k/tutor/?????/cformwsh01_01.html
までしか分かってない場合でも、WSHから飛ぶことって出来ますか?

ちなみに?????はcformwsh01だったりするのですが
ここに規則性がなく分からない場合でも飛べるようになりたいと思っています。
可能であれば何かヒントを頂けると嬉しいです。

これからWSHを学んでいきたい初心者ですが、どうかよろしくお願いします。

807 名前:デフォルトの名無しさん mailto:sage [2011/10/18(火) 17:47:15.88 ]
WSH以外で飛べるならWSHでも飛べるんじゃないか

808 名前:デフォルトの名無しさん mailto:sage [2011/10/18(火) 17:56:36.85 ]
WSHの上に立って膝をゆっくり曲げて瞬間的に伸ばせ



809 名前:デフォルトの名無しさん mailto:sage [2011/10/18(火) 20:57:07.77 ]
?はだめだけどrun urlで飛ばないか?

810 名前:デフォルトの名無しさん mailto:sage [2011/10/18(火) 21:29:07.79 ]
>>806
スレ違い

もし一部不明でも飛ばしてくれるとしたら
飛ばすのはWSHではなくサーバーがやってるので
WSHスレで聞くべき内容じゃない






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<210KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef