To:youkazuはん
>child.Attributes = child.Attributes + 2'この書き方も正しいのか
>どうか・・・
はぁ、わてもよう判りまへんけど、FolderItemオブジェクトに
Attributesプロパティは無いちゅう事でっかなぁ?
Folderオブジェクトになら Attributesがおますさかいに、いっぺん、
FolderItem から、GetFolderメソッドで Folderを引っ張って来て
Attributes を いじりはったらどないだ?
それと、マニュアルみたく、
>if (f.attributes && 2) {
> f.attributes = f.attributes + 2;
とか しはった方がよろしいでっせ。
何でも2を足しとったら、はみだすこともあるんちゃうかな?
・・・うぅ、年食うと朝が早うて・・・
to あいざわさん
いろいろご指摘ありがとうございます。
新たな問題が・・・・
child.Attributes = child.Attributes + 2'この書き方も正しいのかどうか・・・
やっぱりこの書き方は正しくないみたいです。「そんなメソッドもプロパティもサポートしとらんわ!」と怒られてしまいました。
childをobjと書いてもだめだし、どうやったらプロパティを変更できるでしょう?
To:あいざわはん
>ゴールデンボウル...金...杯?<そりゃ競馬や
>おそまつさまでした...
すんまへん、白状しますぅ。
「やりまん」事件と読んどりました。>やまりん?
To:さざなみはん
>また、一般的にCGIへ値を渡す方法の調べ方をお教えください。
はぁ、むつかし質問ですなぁ。
わての感じで書きまっけど、たいていのページはフォームをsubmitして
値を渡しとるようでんので、いっぺんページを保存して、フォームの
要素やらメソッド(たいていpost)やらアクションやらをザっと見て、
あとは適当に試行錯誤しまんなぁ。
よう考えたらWSHとは関係おまへんなぁ。
いっぺん、HTMLのフォームの線で色々調べてみはったら・・・。
すんまへんなぁ、説明しきる自信がおまへんさかいに。
To:あいざわはん
>#でもあっちもこっちも英語!ぜーんぶ英語!みんなの嫌いな英語!!
そんなこと言うたら口が曲がります。
あれは読めへんけど、神の人の言葉だす。
わてら日本民族は、神の人からしたら、けったいな象形文字を使ことる、
辺境の島に住む手先の器用なサルでっせ。
WSHもWinもLinuxも みーな、神の人が作らはったそうな。
わてらは、何も作らんのに、使わせてもろてまんねんで。
ありがたや、ありがたや。(合掌)
ゴールデンボウル...金...杯?<そりゃ競馬や
おそまつさまでした...
To:むたぐちはん
>最近疲れやすい…なぜだろう。
WCも終わったんやから、早寝早起きしはったら、
その内元気になりまっせ。たぶん。
ところで、カーンが最優秀選手に選ばれて贈られはったんが、
ゴールデン・ボール賞やそうでんなぁ。
ちょっと、日本語に訳すのに勇気が要りまんなぁ。
To:youkazuはん
>実は、MacOSXとファイルイ共有をしているので、そちらがこの
>ファイルをかってに作ります。
はぁ、それなら合点がいきますわぁ。
Winやと、ファイル名は「ファイル名」+「拡張子」やから、
ピリオドで始まるなんちゅうことはOSは予定してまへんわなぁ。
WSHが対応してたら、よろしおまんなぁ。
to:さざなみさん
本人が切り上げようとしてるのに掘り返すのもどうかとは思いましたが
>cgiに関してお返事がいただけないところ
>を見るとこれだけは無理と判断いたしました。
http://www.tek-tips.com/gviewthread.cfm/lev2/4/lev3/32/pid/222/qid/255803
http://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=486&lngWId=-10
この辺はいかがっすかねえ。参考になれば、くらい。
#ただ「一般的にcgiに値を設定するのは...」と言われましても。
あと
><frame src="hoge2.html">
>で指定されている hoge.html や hoge2.html
>という文字列を得たいのですが、
>IE.Document.frames
↑これですがこの書き方に該当するものがあるか不明。ただマイクロソフトの
サイトで
http://msdn.microsoft.com/library/default.asp?url=/workshop/author/om/windows_frames_dialogs.asp
このページのまんなかあたり
Creating and Using Frames
と言うタイトルのところをみてくださいまし。参考になるのでは。
#でもあっちもこっちも英語!ぜーんぶ英語!みんなの嫌いな英語!!
さざなみです
cgiに関してお返事がいただけないところ
を見るとこれだけは無理と判断いたしました。
それで、つぎは、
<frame src="hoge.html">
<frame src="hoge2.html">
で指定されている hoge.html や hoge2.html
という文字列を得たいのですが、
IE.Document.frames
のあと、どう記述すればいいのかわかりません。
どなたかよろしくおねがいいたします。
to:nakasimaさん
パイプの切れる件色々試してみました。
いまだ解答は得られずといったところですが以下ご報告です。
与えられた情報を元に似たような処理をするプログラム作って
実験してみました。ただし元はC++のようですが作ったのはVBです
し、VB内ではCOMも使用していないのでこんなもんかなくらいの
最低限のものなのであしからず。
で、66−30で
> ・スクリプトの中でネットワーク資源へのアクセスかなんかでエラーが起こり
> スクリプトのプロセスが終了している
> ・そのプロセスの終了をAPが取得できずそのままReadfileを呼び出しているので
> 「パイプが終了しました」のエラーが起こる
>
>なんてことは考えられませんか
という推測をしましたがこれは起きませんでした。具体的には、呼び出す側の
スクリプトで単独で実行すればエラーになるコードを記述し、それをVB側から
呼び出しても何のエラーも起きませんでした。ただ逆にいうとエラーのあるス
クリプトでもとりあえず実行されてしまうと言えるかもしれません。
またこの意見に対して
>WindowsNT4.0では問題なく動いている事から、プログラムのバグではなく
>Windows2000のセキュリティ強化によるものと私は推測しています。
とご回答されていますが、プログラムのバグを意味していたわけではありません。
この時点ではネットワーク越しにアクセスしているものと考えていたので、
PCの環境によってはエラーが発生している可能性もあるかなと思ったものですから。
さらにスクリプト内でのエラーハンドリングは個人的には難しいと考えていること
から、一番予想されうるという意味で上記のように推測しました。
それと今気が付いたんですがスクリプト呼び出しで//Bを使用しているようですので
なおさらエラーが起きても追うことが難しいのでは?
ちなみにWindowsNT4.0では問題なく動くというのは新情報だったりしますが、
どんなユーザーの組み合わせでも動くということでよろしいのですね?
WSHレベルではないんですがNT4.0と2000ではCMD.EXEの挙動が微妙に違ったりします。
Windows2000のセキュリティ、COMに対するセキュリティいづれも無関係だとは
言いがたいところですが上記の経緯からスクリプトが一番あやしいと思ってます。
いづれにせよ現段階では情報不足ですね。もっと簡単に"ビンゴ"な解答が得られると
思ったんですが...to:nakasimaさんのほうでもう少し切り分けはできますか?
たとえばCOMで行っている処理を固定値に置き換えて処理を単純化してみるとか。
長くなっちゃいましたが参考になるとうれしいです。
to:youkazuさん、あいざわさん
すみません(^^;
あいざわさんの 11時 31分 21秒 のカキコで正解ですね
(引数が逆って話)
不要なカキコをしてしまいました(しかもイコールを2つ書いてるし(笑))
to:youkazuさん
これで良いのでは?
if Left(searchS,1) == "." Then
to:youkazuさん
慌てていて間違えました。
>でもこれだと先頭がピリオド、という仕様に合いませぬゆえ
>If (Mid(searchS, 1, 1) = ".")
>がよろしかろうと...
これなしです。撤回!ごめんなさい。
to:youkazu さん
とりあえず確認したところだけ。
>If (InStr(1, ".", searchS) == 1)
逆ですね。
If (InStr(1, searchS, ".") = 1)
#ちなみに==はvbsでは使いません。
でもこれだと先頭がピリオド、という仕様に合いませぬゆえ
If (Mid(searchS, 1, 1) = ".")
がよろしかろうと...
to 筑集眺餅さん、あいざわさん
実は、MacOSXとファイルイ共有をしているので、そちらがこのファイルをかってに作ります。Macの環境ではピリオドで始まるファイルは非表示になるので問題ないのですが、そのフォルダをwin側で開いたときには、意味のないファイルがたくさん表示されて非常に不便なのです。そこで、そのフォルダを定期的に掃除?するようなスクリプトを考えたかったのですが・・
サンプルコードは、ちょっと自信がなかったのでお見せするのはお恥ずかしいのですが、一応書いて見ます。
どうぞよろしくお願いします。ただ、ウィンドウズでピリオドで始まるファイルイを作ることはそのままではできないようです。
--------------------------------------
'ファイルツリー出力
'
'ファイルツリーをftreeout.txtに出力します。
'最初のダイアログで、ルートにするフォルダを選びます。
Dim sLine, sRootDir, sOutFile
Set Fs = WScript.CreateObject("Scripting.FileSystemObject")
Set Shell = WScript.CreateObject("Shell.Application")
sOutFile = "ftreeout.txt"
If WScript.Arguments.Count > 0 Then
sRootDir = WScript.Arguments(0)
End If
If Fs.FolderExists(sRootDir) Then
Set oRootDir = Shell.NameSpace(sRootDir)
Else
Set oRootDir = Shell.BrowseForFolder(0, "ルートフォルダの選択", 0)
If IsEmpty(oRootDir) Then WScript.Quit
End If
Set ts = Fs.CreateTextFile(sOutFile, True)
ts.WriteLine oRootDir.Title
Search oRootDir.Items.Item 'oRootDir.Self 'Win2000の場合
ts.Close
WScript.Echo "終了"
Sub Search(obj)
Dim I
I = 1
If obj.IsFolder Then
Set oItems = obj.GetFolder.Items
For Each child In oItems
If child.IsFolder Then
tmp = "■" & child.Name
searchS = child.Name
msgbox InStr(1, ".", searchS,1)'このメッセージボックスで確認すると、戻り値がどのファイルでも「0」になります。
If (InStr(1, ".", searchS) == 1) Then'よってこの動作はうまくいかない。
child.Attributes = child.Attributes + 2'この書き方も正しいのかどうか・・・
End If
Else
tmp = child.Name
searchS = child.Name
If (InStr(1, ".", searchS) == 1) Then
child.Attributes = child.Attributes + 2
End If
End If
If I = oItems.Count Then
ts.WriteLine sLine & "┗" & tmp
sLine = sLine & " "
Else
ts.WriteLine sLine & "┣" & tmp
sLine = sLine & "┃"
I = I + 1
End If
Search child
Next
End If
If Len(sLine) > 0 Then
sLine = Left(sLine, Len(sLine) - 1)
End If
End Sub
筑集眺餅さん、お早いですねえ。
>はぁ、ところで、ピリオドで始まるファイルって、あるもんでっか?
自分で作った事はないけどありますよ。Borlandなんかでインストールする
とドキュメントのルートなんかに.jbuilder5なんてのをかってに結構作って
くれたりします。
to:youkazuさん
>InStr関数ではファイル名中のピリオドの場所を検出してくれないようなのです
InStr関数とファイル名は関係ないので何か勘違いされているのでは?
よろしければそのあたりどのようにコーディングされているのか見せていただけます?
to:nakasimaさん
ご回答を元にちょっと実験中です。今日中にまたレスします。
To:youkazuはん
>動作:ルートフォルダを選択→すべてのファイル、全てのフォルダについて
>ピリオドで始まるならプロパティを非表示に変更。
はぁ、ところで、ピリオドで始まるファイルって、あるもんでっか?
カレントディレクトリやら親ディレクトリとまぎらわしいこと
おまへんか?
そんなややこし名前の付け方、やめときなはれ。
以前ちょっと作りかけて、そのままだいぶ放置していたのですが、一念発起作りかかったのですが、いきなり頓挫しています。
VBSで、ピリオド(.)で始まるファイルを非表示にするスクリプトを作りたいのですが、InStr関数ではファイル名中のピリオドの場所を検出してくれないようなのです。
どうすれば、先頭がピリオドであることを検出することができるでしょうか?
ちなみにこのホームページで公開されているファイル構造をテキストに書き出すプログラムを参考にさせていただいています。
突然ですが、よろしくお願いします。
動作:ルートフォルダを選択→すべてのファイル、全てのフォルダについて
ピリオドで始まるならプロパティを非表示に変更。
to:あいざわさん
なんか長くなってきましたね。お手数をおかけして申し訳ありません(^^;
>スクリプトとAPはどのように配備され実行されるのでしょうか?
>1.両方ともひとつのPCにインストールされ、各ユーザーはネットワークから呼び出す
>2.両方とも各PCにインストールされ各ユーザーはローカルで呼び出す
>3.その他
2です。
説明不足で申し訳ありません。ネットワークの方でとかユーザの方でとかは
ユーザIDの話です。インストールは、ローカルマシンにドメインのユーザで
ログオンして行ったという事です。
エラーになる/ならないも、ローカルマシンにドメインユーザでログオンして
実行した際とローカルユーザでログインして実行した際の話です。
ちなみに、ローカルユーザでログインしてインストールした場合、
ローカルユーザで実行した場合はOKですが、ドメインユーザだとエラーになりました。
>APがReadFileでWSHにアクセスしているということでいいんですよね。
はい。以下は、そのロジック例です。
// パラメータ長の送信
WriteFile(m_hStdIn, usHead, 8, &dwIoSize, NULL);
// スクリプトへパラメータを送信
WriteFile(m_hStdIn, pchIn, uiParaSize*2, &dwIoSize, NULL);
を行った後で、
// スクリプトでの処理結果の長さを取得
ReadFile(m_hStdOut, usHead, 8, &dwIoSize, NULL);
// スクリプトでの処理結果の取得
ReadFile(m_hStdOut, szData, dwIoSize, &dwIoSize, NULL);
>・スクリプトの中でネットワーク資源へのアクセスかなんかでエラーが起こり
> スクリプトのプロセスが終了している
>・そのプロセスの終了をAPが取得できずそのままReadfileを呼び出しているので
> 「パイプが終了しました」のエラーが起こる
>なんてことは考えられませんか?
WindowsNT4.0では問題なく動いている事から、プログラムのバグではなく
Windows2000のセキュリティ強化によるものと私は推測しています。
なお、、、
今回のお答えを書く上で再度ソースを追ってみたところ、
パイプでデータのやり取りを行っているのは、APtoCOMでした。
どういう事かというと、
1.APでscriptプロセスを生成。その際に引数にパイプハンドルを渡す。
2.script内でCOMオブジェクトを生成。そのCOMのメンバ変数に
渡されたパイプハンドルをセット。
3.scriptはCOM関数を使ってデータをやり取りする。
4.COMは、メンバ変数のパイプハンドルを使って、APとデータをやり取りする。
ひょっとしたら、COMに対するセキュリティの問題かもしれません(^^;
ご回答ありがとうございます。いまだ五里霧中ですがもう少し食い下がってみます。
>"WScript c:\temp\xxxx.wsf //Nologo //B n1 n2"
>(n1とn2は、APとscriptでデータをやり取りする為の名前なしパイプのハンドルです)
スクリプトとAPはどのように配備され実行されるのでしょうか?
1.両方ともひとつのPCにインストールされ、各ユーザーはネットワークから呼び出す
2.両方とも各PCにインストールされ各ユーザーはローカルで呼び出す
3.その他
>ツールは、ネットワークの方でインストールしました。
>で、ローカルの方ではエラーになっています。
>また、同等の権限のある別のネットワークユーザでもエラーになりました。
このように書かれているので1なのかなと思いますが...
また先の質問で
>WSHとのパイプに対するReadFile()でエラーが発生しています。
>GetLastErrorで109が帰ってきており、意味は「パイプは終了しました。」です。
と書かれているのでAPがReadFileでWSHにアクセスしているということでいいんですよね。
で、MSDNのReadFileとAnonymous Pipe Operationsの項を読んでみたんですが
以下一部引用
ReadFile
If the anonymous write pipe handle has been closed and
ReadFile attempts to read using the corresponding anonymous
read pipe handle, the function returns FALSE and GetLastError
returns ERROR_BROKEN_PIPE.
Anonymous Pipe Operations
...process has written to the pipe. The ReadFile call can also
return if all write handles to the pipe have been closed or if
an error occurs before the read operation has been completed.
とあります。なので現段階での推測なんですが、
・スクリプトの中でネットワーク資源へのアクセスかなんかでエラーが起こり
スクリプトのプロセスが終了している
・そのプロセスの終了をAPが取得できずそのままReadfileを呼び出しているので
「パイプが終了しました」のエラーが起こる
なんてことは考えられませんか?
to:あいざわさん
>1)作成されたAPとは何をするものですか。
データ変換ツールです。で、このツールには「大文字to小文字」とか「後ろのスペース削除」などの
デフォルト変換機能がついているのですが、それだけだとユーザにニーズに応えるには弱いって事で、
ユーザが自由に変換機能を追加できるよう「スクリプト変換」機能を装備させました。
>2)CreatProcessを使用する理由は何でしょう?(スクリプトを起動するだけなら他にもあるように思いますので
別プロセスとして動かしたかったからだと思うのですが…
作成者でないので詳しい理由は分かりません(^^;
>3)CreatProcessの部分のコードを見せていただけますか?
fSts = CreateProcess(NULL,szCmd,NULL,NULL,TRUE,CREATE_NO_WINDOW,NULL,NULL,&si,&pi);
第2引数のszCmdには、以下のコマンドライン文字列が格納されています。
"WScript c:\temp\xxxx.wsf //Nologo //B n1 n2"
(n1とn2は、APとscriptでデータをやり取りする為の名前なしパイプのハンドルです)
>4)このAdministratorはAPを実行するマシンのローカルグループでしょうか。それともネットワーク?
ネットワークです。
>5)それとnakasimaのアカウントはローカルとネットワークのそれぞれで何になっているでしょうか?
ローカル :Administrators、Users
ネットワーク:Administrators、Users、DomainAdmin、DomainUser、BuckupOprators、ServerOprators
ツールは、ネットワークの方でインストールしました。
で、ローカルの方ではエラーになっています。
また、同等の権限のある別のネットワークユーザでもエラーになりました。
この事から、私の考えではユーザ権限とは別の問題ではないかと推測しています。
>www.microsoft.com/windows2000/ja/professional/help/windows_security_default_settings.htm
>↑こちらの内容はご存知でしょうか。もし既知の内容でしたらごめんなさい...
知りませんでした。今から読んでみます(^^;
どうしよう…お返事溜めまくってますね。
というか、最近書き込み多いですね。満員御礼ってか。
フォルダカスタマイズも、どうにも進展無し。
えらいこっちゃ、えらいこっちゃ。
とにかく、期待せずにいろいろお待ちください。
最近疲れやすい…なぜだろう。
To:ペインはん
>""を何とかして表現したいんですが・・・
>どうしたらいいでしょうか。
へ、何をどんな風に表現したはりたいんでっか?
どう答えたらええでっかなぁ?
To:neoはん
>でもカーンのプレイはほれぼれしました。
そうでんなぁ。ドイツのT2コンビはようやりましたがな。
(カーン⇒シュワちゃん、クローゼ⇒液体金属男)
でも、ブラジルの大五郎はようやった。いや、寛美2世か?
ああなんかこのログは私の一人舞台になっとる...
to:たまをさん
>流石ですね。こんなに早く、しかも全文載せて頂けるなんて。
お褒めの言葉をいただきありがとうございます。^^;
うまくいって何よりです。
個人的には何から何までやっちゃうのは相手に対して
親切ではないと思ってたりはしますが、コードを相手にすると
つい夢中になちゃうんで...
老婆心ながら付け加えると、詳細まで覚えなくともよいから
まず各オブジェクトのプロパティやメソッドをざっと目を通
しておくとよいと思います。
何かしたいと思ったときに「そういえばあんなメソッドがあっ
たなあ、じゃあこれはこーゆー風に実装できるんじゃあ...」
なんて発想につながります。
to:あいざわさん
有難うございました。早速動作確認してみました。
ちなみにEcho文も大変参考になりました。
やっぱり他の方のソースを見るというのも大変勉強になりますね。
""を何とかして表現したいんですが・・・
どうしたらいいでしょうか。
to:あいざわさん
ありがとうございました。
何の問題も無く動きました。(ちょっと感動してしまいました。)
本当にこの度は何から何までありがとうございました。
to:あいざわさん
ありがとうございます。
流石ですね。こんなに早く、しかも全文載せて頂けるなんて。
本当にありがとうございます。
早速試してみたいと思います。
この度は本当にありがとうございます。
to:shobohnさん
MkEditor用の補完くん早速使ってみました。
いーですねえこれ。
自分もこんなん作ってみたいなあ。
慣れてきたら使い心地などレスしたいと思います。
to:neoさん たまをさん
なかなか複雑になってきましたねえ。
ちょっと長いんですが結局全文載せることにしました。
Option Explicit
Dim fso, objSourceFolder
Const sSourceFolderPath = "D:\A" 'コピー元
Const sDestFolderRootPath = "D:\B\" 'コピー先
Set fso = CreateObject("Scripting.FileSystemObject")
Set objSourceFolder = fso.GetFolder(sSourceFolderPath)
ScanFolder objSourceFolder, sDestFolderRootPath
Set fso = Nothing
Set objSourceFolder = Nothing
'***** End Of Execution *****
Sub ScanFolder(objSourceFolder, sDestFolderPath)
Dim objIter, objIterFile, sFolderBody
If Not fso.FolderExists(sDestFolderPath) Then
fso.CreateFolder(sDestFolderPath) '新規にフォルダを作成する
'WScript.Echo "create ", sDestFolderPath
End If
If objSourceFolder.SubFolders.Count > 0 Then
For Each objIter In objSourceFolder.SubFolders
sFolderBody = sDestFolderPath & objIter.Name & "\"
'WScript.Echo "scan ", objIter.Path & "," & objIter.Name & "," & sFolderBody
'サブフォルダがあれば再帰的にスキャンする
ScanFolder objIter, sFolderBody
Next
Else
'最下層のフォルダ
For Each objIterFile In objSourceFolder.Files
If UCase(fso.GetExtensionName(objIterFile.Name)) <> "JPG" Then
'WScript.Echo "move ", sDestFolderPath & "," & objIterFile.Name
'fso.MoveFile objIterFile.Path, sDestFolderPath 'このコメントを取る
End If
Next
End If
End Sub
今回も一応の確認はしています。>前回のデータ残しといてよかった!
実際に実行するときは「このコメントを取る」の先頭の'取ってください。
それからEcho文もコメントとして残しておきました。
なおお分かりだと思いますがあくまでもサンプルなんでバックアップ等
取得の上自己責任で試してください。
ちなみに例によってインデントをしたいんで全角スペース入れてます。
HTAその後
先日はHTAでの
> Set WshShell = WScript.CreateObject("WScript.Shell")を
Set WshShell = CreateObject("WScript.Shell")に変える方法ありがとう御座いました。おかげで完成と思いきやHTA内MAIN内「戻る」ボタンでIFREMAを戻そうとしたんですがうまくいきません。なんせwsh、hta、htmすべて世にあるサンプルを分解合成でしか勉強習得してないので簡単な抜け落ちみたいで何なんですが以下が今んところのhtaファイルの中身です
<HEAD>
<TITLE>slide App</TITLE>
<HTA:APPLICATION ID="sa"
APPLICATIONNAME="slide"
BORDER="thin"
CAPTION="yes"
ICON=""
WINDOWSTATE="maximize"
NAVIGABLE="yes"
SCROLL="no"
SYSMENU="yes"
INNERBORDER="no"
/>
<SCRIPT language="VBScript">
<!--
function wshshell()
Set WshShell = CreateObject("WScript.Shell")
Return = WshShell.Run ("../\susie.exe -s ../\test" ,3)
end function
-->
</SCRIPT>
</HEAD>
<BODY bgcolor="#000000" text="#ffffff" vlink="#999999">
<CENTER>
<FORM method="post">
<INPUT type="button" name="Button0" value="back" onclick="history.go()">
<INPUT type="button" name="Button1" value="スライド表示" onclick="wshshell()">
</FORM>
<iframe src="image.htm" NAME="image" frameborder=0 height=100% width=100% marginheight=0 marginwidth=0>
</iframe>
</div>
</BODY>
で最終的に何をしたいかと言うと画像ファイルの一覧とスライド表示なんですが画像といっしょに
CD-ROMに焼き込んで使用したいんであります。
htmだけで機能するのは完成したんですが表示画像の自動リサイズが出来ずsusieに
頼ってます。
TO あいざわさん
なるほど。どうりで今日先週と同じ処理をしているのに
カウント数が違うわけがわかりました。
それと僕もたまをさんと同じことが気になります。
参考にさせて頂きたいので
宜しくお願いいたします。
P.S カナリアたちが優勝しましたね。
どうして僕が応援している所がことごとく負けていったのでしょう??
(ちなみにドイツが勝ってほしかった)
過去LOGをみてもらったらわかるように
セネガルもいなくなったし、、、
でもカーンのプレイはほれぼれしました。
あれっ、ごめんなさい
同じのが2つ載っちゃいました。
あいざわさん、ごめんなさい問題がありました。
問題と言うか、気が付かなかった自分が馬鹿だったんですけど・・・
各フォルダの移動させるファイルが同じ名前だったら1つしか移動できませんよね。
まったく気が付きませんでした.バカでした。
あと、抜き出したファイルがどこにあったものかも知りたいので・・・
Aのフォルダと全く同じ構造や名前をもつフォルダBを違うドライブ(またはフォルダ)に作って、jpg以外のファイルをBに移すというスクリプトを作りたいのです。
一度無い頭を振り絞って作ろうとしたのですが、同じTree構造のフォルダすら出来ません。
Aのフォルダをコピーして、Aからはjpg以外のファイルをBからはjpgだけをそれぞれ削除しようとも思ったのですが、それだと時間もかかるし一時的とはいえ容量がとっても大きくなってしまうのでなるべく避けたいのです。
どのようにしたら良いのか方法を教えてください。
お願いします。
あいざわさん、ごめんなさい問題がありました。
問題と言うか、気が付かなかった自分が馬鹿だったんですけど・・・
各フォルダの移動させるファイルが同じ名前だったら1つしか移動できませんよね。
まったく気が付きませんでした.バカでした。
あと、抜き出したファイルがどこにあったものかも知りたいので・・・
Aのフォルダと全く同じ構造や名前をもつフォルダBを違うドライブ(またはフォルダ)に作って、jpg以外のファイルをBに移すというスクリプトを作りたいのです。
一度無い頭を振り絞って作ろうとしたのですが、同じTree構造のフォルダすら出来ません。
Aのフォルダをコピーして、Aからはjpg以外のファイルをBからはjpgだけをそれぞれ削除しようとも思ったのですが、それだと時間もかかるし一時的とはいえ容量がとっても大きくなってしまうのでなるべく避けたいのです。
どのようにしたら良いのか方法を教えてください。
お願いします。
なんか、勘違いしてたみたいなのですが、
HTAをアイコン化できるっていうのは、左上のタイトルバー?のところだけなんですか?
ファイル表示じたいは、ファイルの関連付けの通りにしかならないんですか?
そうですよねー
あいざわさん、ありがとうございます
うまくいきました。
あいざわさんからもらったメールのを、そのままコピーしたら出来ました。
ありがとうございます。
でも、掲示板に書かれていたものとそんなに変わらないですよね。
何がいけなかったんでしょう?
謎です。
とにかく、本当にありがとうございました。
とても、助かりました。
「ブ」や、「ブ」や、「ブ」やったでー!<知っとるがな。
neoさんにツッコミ...
>sampleでの”objSourceFolder.SubFolders.Count”でCountを見ていますが
>この値は、For Nextでまわしているときに徐々に減っていきますよね?
MoveFolderじゃないのでCountは減らないっす。
>MyInt = CInt(MyDouble)
CStr(MyDouble)っす。
ちゃんちゃん。
無事うまくいきました。
昨日からの呪縛から開放されて良い週末が迎えれそうです。
さあ、いよいよ日曜日は決勝戦です。
皆さん張り切って応援しましょう!!!
(ちなみに僕は大五郎のいるチームを応援します。)
Have a nice WEEKEND!!!
「プリンタの追加ウィザード」を表示させる方法はありますか?
>なのでひょっとしてコピー先の名前の最後に\が抜けてませんか?
>私のところでも\をとるとうんともすんとも言わなくなります。
¥が抜けてました。
じゃあこれで大丈夫かなと思ってやってみたのですが、駄目でした。残念です。
neoさんはできましたか?
何が違うんでしょうか?
あいざわさんは何も問題なくいけてるわけですよね。
もしあいざわさんがよかったらメールに添付して送っていただけませんか?
それで出来るかどうか、こっちのと何が違うのか見てみたいのですが、よろしいでしょうか?
私も、掲示板で決着を着けたかったですが、よろしくお願いします。
本当にいろいろとすみません。
あいざわさん、ありがとうございます。
ご迷惑かけてすみません。
neoさんも色々試してもらってありがとうございます
>For EachのなかにWScript.Echo objIter.Nameとか入れてみて
>コマンドプロンプトから実行しても何も表示されませんか?
やってみました。
残念ながら何も表示されませんでした。
それに、「'for'ループを制御する変数が不正です。」というエラーまで出てきてしまいました。
あいざわさんばかりに頼ってしまい、本当に申し訳ないと思っておりますが、何卒よろしくお願いいたします。
to:neoさん,たまをさん
お手間をおかけしています。
FileSystemObjectのMoveFileメソッドの説明を見ると
>引数 source にワイルドカード文字を使用したとき、および引数
> destination がパスの区切り文字 (\) で終わるとき、引数
>destination には既存フォルダを指定したと判断され、条件に
>一致するファイルがそのフォルダ内へ移動されます。それ以外の
>ときは、引数 destination には作成するファイルの名前を指定
>したと判断されます。
のように記述されています。
なのでひょっとしてコピー先の名前の最後に\が抜けてませんか?
私のところでも\をとるとうんともすんとも言わなくなります。
TO:あいざわさん
僕も早速試しているのですが、たまをさん同様、うまくいきません。
たまをさんと同じように半角も修正しコピー先、コピー元を変え、
実行したのですが、うんともすんとも、、、、
sampleでの”objSourceFolder.SubFolders.Count”でCountを見ていますが
この値は、For Nextでまわしているときに徐々に減っていきますよね?
うまくMoveFileされていれば、、
試しに本当にCountされているか
MsgBoxで出力しようと思ったのですが、ずーっと0でした。
ちなみに
MyDouble = objSourceFolder.SubFolders.Count
MyInt = CInt(MyDouble)
MsgBox "MyInt =" & MyInt
で表示させようとしました(まちがっているかも)。
お願いします。 教えてください。昨日から行き詰まっています。
to:たまをさん
スクリプトを見直しましたがFileSystemObjectしか使っていないので
動作環境は関係ないと思いますが。というか実行環境に依存するコードが
あったらエラーが起きるんじゃないかと。
For EachのなかにWScript.Echo objIter.Nameとか入れてみて
コマンドプロンプトから実行しても何も表示されませんか?
あいざわさん、早速のレスありがとうございます。
>to:たまをさん
>ひょっとして文字が正しくありませんというエラーになっていますか?
>だとしたらすみません。書きもらしましたがどうしてもインデントさせたくて
>全角のスペースを使っているところがあります。全角のスペースを半角スペースに
>変換してください。
>もしそうでないのならどういう風にうまくいかないか教えてください。
全角スペースをは半角にって言うのははじめに出てきてたので直してました。
その後で、このスクリプトを実行したらエラーもなく終わったので確認したところ何も起きてませんでした。
動作環境って言うのもあるのでしょうか?
筑集眺餅 さん
レスありがとうです。
ボタンクリックで、カレンダー表示って、マクロ使っていくのは、分かったんだけど、HTAにしたときに、カレンダーをどうしたらいいか、わかりません、、、
まいった、、、
to:nakasimaさん
えっと補足します。
www.microsoft.com/windows2000/ja/professional/help/windows_security_default_settings.htm
#ちなみにこれはスタート→ヘルプで「既定のセキュリティ設定」を検索した内容と同じです。
↑こちらの内容はご存知でしょうか。もし既知の内容でしたらごめんなさい...