VBスクリプト掲示板
今日の新規投稿数:1 |
今日の返信投稿数:0 |
昨日の新規投稿数:0 |
昨日の返信投稿数:0
トップ
- 前に戻る(B )
■現在の記録記事数:278件
[ ページ ] 1 2 3 4 5 6 7 8 9 10 Next ->
お世話になります。
標記の件につきまして、自己解決がどうしてもできませんでしたのでご教示いただけないでしょうか。
VBScriptを使用して、Aというフォルダに格納されているサブフォルダを全てチェック(検索)し、指定した条件に該当するものを削除したいのです。
条件は以下の通りです。
〇Aフォルダ直下には、Bフォルダ、Cフォルダ、Dフォルダ・Eフォルダ・Fフォルダが存在している。
〇B・Cフォルダ直下には「yyyy_mm_dd」(作成日日付)という名前でフォルダが作成されている。
〇Dフォルダ直下にはGフォルダ・Hフォルダが存在し、G・Hフォルダ直下に「yyyy_mm_dd」(作成日日付)という名前でフォルダが作成されている。
〇E・Fフォルダ直下にはファイルのみ存在し、フォルダは存在しない。
この条件の時、それぞれのフォルダ内にある「yyyy_mm_dd」(作成日日付)フォルダのうち今日の日付から90日以上前の作成日日付フォルダを削除したいのです。
ご教示いただきたいのは
サブフォルダ内のサブフォルダ、サブフォルダ内のサブフォルダ内のサブフォルダをチェックするロジック
「yyyy_mm_dd」(作成日日付)フォルダと今日の日付の差を求めて削除するロジック
上記の2点です。
なお、A〜Hのフォルダは削除せずそのまま残しておきたいです。
質問する場が違うかもしれませんがご教示いただけますと幸いです。
よろしくお願いいたします。
古い投稿なので今更ですが、レスがつかないようなので。
> サイズだけが取得できません。
再解析ポイント(リパースポイント)が原因ですね。
コマンドプロンプトを起動し、カレントをマイドキュメントに移動してから
「DIR /AL」コマンドを実行してみてください。
"My Pictures" などが <JUNCTION> として列挙されるかと思いますが、
これらに対するアクセスが拒否されているためです。
(Win 2000 や Windows XP であっても、リパースポイントのサイズは正しく取得できません)
> ネットで調べたところ、権限などが関係しているかもとのことでしたが、
たとえば、先のコードに対して、
Dim S, SF
S = ""
For Each SF In F.SubFolders
S = S & vbCrLf & SF.Name & "|"
On Error Resume Next
S = S & CStr(SF.Size)
If Err.Number <> 0 Then
S = S & "[" & Err.Description & "]"
End If
On Error GoTo 0
Next
WScript.Echo "Folder Size List:" & S
のようなコードを書いてみると、ジャンクションとなっているフォルダーが
エラーになっていることが分かるかと思います。
このあたりの事情は、VBS 以外でも同様だったりします。
http://bbs.wankuma.com/index.cgi?mode=al2&namber=60381&KLOG=101
> Set WSell = CreateObject("WScript.Shell")
変数名が シェル ではなく セル なのがちょっと気になる…。
> サブフォルダの中に
Win2000 までは「フォルダ」でしたが、
Vista 以降では「フォルダー」です。
http://www.microsoft.com/japan/presspass/detail.aspx?newsid=3491
> ご教授頂きたくお願い致します。
http://www.tt.rim.or.jp/~rudyard/torii009.html
> 解決できませんでした。
対処方法としては、リパースポイントを読み飛ばす方法が挙げられます。
dim iSize
iSize = 0
On Error Resume Next
For Each SF In F.Files
iSize = iSize + SF.Size
Next
For Each SF In F.SubFolders
If Not CBool(SF.Attributes And &H400) Then
iSize = iSize + SF.Size
End If
Next
On Error GoTo 0
Size = "サイズ:" & CStr(iSize) & vbCrLf
なお、リパースポイント以外でも、アクセス不能なファイルやサブフォルダーを含んだ
フォルダーの場合は、Size プロパティの取得が失敗する可能性があります。
そうした場合にも対処したいのであれば、S列挙部分を再帰処理して、
各フォルダー内の個々のファイルの Size を合計していくことで対処してみてください。
VBScriptでのマイドキュメント情報取得時のエラーについての質問です。
VBSでマイドキュメント情報を以下の内容で取得しようとしているのですが、サイズだけが取得できません。
フォルダ名やアクセス日は取得できるのですが、サイズを取得しようとするエラーが発生してしまいます。
ネットで調べたところ、権限などが関係しているかもとのことでしたが、解決できませんでした。
ご教授頂きたくお願い致します。
・実行環境
Windows7
・vbsファイルの内容
-------------------
Set WSell = CreateObject("WScript.Shell")
MyDoc = WSell.SpecialFolders("MyDocuments")
Set FS = CreateObject("Scripting.FileSystemObject")
Set F = FS.GetFolder(MyDoc)
Name = F.Name & vbCrLf
Size = "サイズ:" & F.Size & vbCrLf
Acc = "アクセス日:" & F.DateLastAccessed
WScript.Echo Name & Size & Acc
・エラー内容
-------------------
行:6
文字:1
エラー:書き込みできません
コード:800A0046
ソース:Microsoft VBScript 実行時エラー
今、読み直していて中途半端な内容になってますね。
これでは返答はしにくいですよね。
すいませんでした。
これにて締めたいと思います。藤代さんありがとうございました。
返信ありがとうございます。
ごもっともですよね。(−−;
客先でエラーが出て、ファイルのコピーエラーのメッセージが出てきたというお話だったんです。
「a[3].csvがコピーできません。共有違反がありました。・・・」
一応ソースは見せてもらったのですが、単純に、
Response.ContentType
Response.Write
Response.Flush
Response.End
の組み合わせでエラーリカバリーもなく、ローカルにファイルをダウンロードしてるだけのようですし。
単純にEndメソッドが完了しないうちにセッションが切れて、ファイルを閉じるといった行為がなかったせいではないかと、個人的には疑っているのですが。
どう思いますか?
> > Responseオブジェクトを利用して、ファイルダウンロード中にセッションが切れてしまった場合、
> > そのダウンロードしてるファイルはどうなるのでしょうか?
>
> プログラムの作り方によりますから、作成者に聞いた方が早いですよ。(^^;
>
> ブラウザなんかだと、~1 とか (1) とかを付けた別名で保存しますね。プログラマとして
> は、エラーを起こさせるわけにも行かないので、処理が簡単な上書きにしたりすると思い
> ます。想像の範囲を超えませんが。
> Responseオブジェクトを利用して、ファイルダウンロード中にセッションが切れてしまった場合、
> そのダウンロードしてるファイルはどうなるのでしょうか?
プログラムの作り方によりますから、作成者に聞いた方が早いですよ。(^^;
ブラウザなんかだと、~1 とか (1) とかを付けた別名で保存しますね。プログラマとして
は、エラーを起こさせるわけにも行かないので、処理が簡単な上書きにしたりすると思い
ます。想像の範囲を超えませんが。
お世話になります。
Responseオブジェクトを利用して、ファイルダウンロード中にセッションが切れてしまった場合、
そのダウンロードしてるファイルはどうなるのでしょうか?
再度実行した際には、ダウンロード時に(同名ファイルの為)書き込みエラーが発生するのでしょうか?
どなたか、経験のある方、教えていただけると幸いです。
(他からの質問の為、手前で確認できる環境がなく質問させていただきました。申し訳ありません。)
> ASPが利用できるレンタルサーバ、ホスティングを探しています。
> しかもBASP21が利用したいのです。
私は、cervi.jp を契約しています。ASP + BASP21 にも対応しています。
http://cervi.jp/
> できるだけ性能がいいサーバが希望です。ただ専用サーバを利用できるほどのお金が無いので、共用サーバでお勧めのものがありませんでしょうか?
あまり負荷のかかる使い方はしていませんので、性能については判断できません。
料金等に関しては、下記を参照してください。
https://cervi.jp/contents/2004/12/post_2.html
ASPが利用できるレンタルサーバ、ホスティングを探しています。
しかもBASP21が利用したいのです。
できるだけ性能がいいサーバが希望です。ただ専用サーバを利用できるほどのお金が無いので、共用サーバでお勧めのものがありませんでしょうか?
よろしくお願いいたします。
典填天展さんへ
結局無理でした。
VBスクリプトを読めない人が、ASPファイルをカスタマイズすることに
よるサーバーへの影響や、セキュルティー上の問題により、
作成者側に拒否されました。
また、さらに新たな社内ルールとして、
ASPやCGIを読めない人がそうしたページを更新作業をしてはいけないことや、
いかなる場合も、サーバースクリプトページをお客様に渡してはいけないといったことが、
決まってしまったようです。
なので、無理です。
さっき実験してきずきました。
ありがとうございました。
今回の件とは、関係なさそうですね。
削除しても問題なさそうです。
> 帰ってきたHTMLファイルにこんなものが付いていました。
> <!-- saved from url=(0022)http://internet.e-mail -->
> <!-- saved from url=(0022)http://internet.e-mail -->
> <HTML>タグより上に何か書きこんでもあまり、意味を成さないとは思うのですが、
意味がないわけじゃありませんが・・・多分今回の話とは全く関係ないでしょうね。
#メールにファイルを添付して送信して、Outlookとかで受信して、保存すると付くらしい・・・
#(http://support.microsoft.com/kb/833978/en-us)
#つまり、「このファイルは、メールで2回送信されたよ」って言う意味・・・
#後「saved from url=」の指定には、セキュリティ設定を変更する機能があるらしい・・・
#(http://support.microsoft.com/default.aspx?scid=kb;ja;833633)
帰ってきたHTMLファイルにこんなものが付いていました。
<!-- saved from url=(0022)http://internet.e-mail -->
<!-- saved from url=(0022)http://internet.e-mail -->
<HTML>
<HEAD>
通常<HTML>のタグの上側に書き込むとしても、HTMLのバージョン情報ぐらいで、
<HTML>タグより上に何か書きこんでもあまり、意味を成さないとは思うのですが、
2つもこんなものが挿入されていました。
<!-- 管理人の覚書-->を書くときに自分もよく使っているので。
> 2人とも説明を受けてないのです。
そうですか・・・
> VBスクリプトは、HTMLでもJSでも、フラッシュで使われるスクリプトでもないため
> 受けても分からないため、その方に任せました。
この件については貴方とは、「技術的な話はできない。」って事ですね。
了解しました。
#完全に理解できないまでも、原因や解決方法の概略でも聞いて、投稿しておいてもらえば、
#「役に立つ(かもしれない)情報」になるんですが・・・
#それすら、やれないのなら、(このサイトの参加者にとって)これ以上やり取りをするメリットもなさそうですね。
私も、当社のHPの担当の方も、HTMLファイルなどは1からソースで組めるレベル
あるのですが、サーバースクリプトに関しては、度素人なもので。
2人とも説明を受けてないのです。
実は、自分も担当者もそれぞれが管理するHPの中にサーバースクリプトを
ふんだんに使ったものがあるのですが、HP作成ツールを使って自動的に
サーバースクリプトを掛けてるのが現実です。
VBスクリプトは、HTMLでもJSでも、フラッシュで使われるスクリプトでもないため
受けても分からないため、その方に任せました。
> あの送信フォームの件ですが、作成者に更新依頼をし、
> 更新作業をしてもらった結果解決しました。
で、原因は何で、どういう方法で解決されたんですか?
[開く] #290 【その他】 はな 20708d18 さん 2006-07-15(土) 10:57
あの送信フォームの件ですが、作成者に更新依頼をし、
更新作業をしてもらった結果解決しました。
典填天展さん、はなさんありがとうございます。
頂いた方法でうまくいきました。&テスト方法についても今後そうしてみようと
思います。今回結構てんぱっていて、自分で調査する時間が思うようにとれなかったのですが
非常に迅速に教えて頂きありがたかったです。今後は、質問以外でも立ち寄らせて頂きます。
> TAKASHIさんへ
> VBスクリプトをほとんど読めないものが、出る幕ではないかもしれませんが・・・。
> JSを挿入する前のVBスクリプト(ASPファイル)をサーバーにUPして、
> 生成後HTML(ブラウザのソースでみることの出来るソース)を
> メモ帳などにhtmlファイルとして保存。
> それをに外部ファイル化した、JSを挿入させるとJSの
> が正常に働いているかチェックできると思います。
> 掲示板や日記のスキンを作る(カスタマイズ)ときは、とりあえずその方法を
> しています。
> 自分はCGIも読めませんので、掲示板や日記はレンタルしたものですが。
> > VBスクリプトをほとんど読めない
> って事で、ワンポイント情報。
>
> > JSを挿入する前のVBスクリプト(ASPファイル)をサーバーにUPして、
> > 生成後HTML(ブラウザのソースでみることの出来るソース)を
> > メモ帳などにhtmlファイルとして保存。
> > それをに外部ファイル化した、JSを挿入させるとJSの
> > が正常に働いているかチェックできると思います。
>
>
> 一口に「VBスクリプト」と言っても、大きく分けて3種類あるのをご存知ですか?
>
> (1)ブラウザ(IE:Internet Explore)上で動作する「クライアントサイドスクリプト」
> HTMLファイル(拡張子:htm/html)内に「<script>タグ」を使って記述
> (ASPファイル上に記述されて、サーバ上では実行されず、そのままブラウザ上に送られるケースもある)
> (2)サーバ(ASP:Active Server Pages)上で動作する「サーバサイドスクリプト」
> ASPファイル(拡張子:ASP)内に、「<script runat=server>タグ」又はその省略形式の「<% %>」を使って記述
> (3)WSH(Windows Script Host)上で動作する「WSHスクリプト」
> VBSファイル(拡張子:VBS)に、そのまま記述
>
> 貴方が言っている「VBスクリプト(ASPファイル)」は(2)ですね。
> #動作確認方法は(1)にも言及している?
>
> で、TAKASHIさんの質問は、(1)(と多分(3))の話だと思います。
>
>
> 各々特徴があるので、どれが対象かは、コードを見れば、ある程度、判断可能です。
>
> 例えば・・・
>
> 「document」オブジェクトは、(2)には無いので、質問に「Document.Write 」とあった段階で、(2)じゃなさそうと言うのが分かります。
> #ASPなら、出力は「document」オブジェクトではなく、「response」オブジェクトを使用する。
>
> また、「Set objIE = CreateObject("InternetExplorer.Application")」ってやっている段階で、
> (2)ではなさそうと言うのも分かります。
> #サーバ上でIEを作成しても、表示されないので無意味な動作になるので・・・
> (1)でわざわざIEをCreateObjectするか・・・微妙ですね・・・可能性0じゃないですが、
> かなり低いですので、まあ、(3)かな?
>
> で、「"<script language=""javascript"">" 」とやっている段階で、(1)は確実。
>
>
> #て事で、私は(1)及び(3)と判断し、動作確認&回答をしてます。
場違いな回答でしたね。
(1)については、そういうVBスクリプトもあるらしぐらいは知ってました。
その場合、JSを使ったとしてもHTMLファイル内で使うことになりそう
なので、ここで質問しないかなって思ったので、
(2)について知ってる範囲で回答しました。
(3)については、初めてみました。
さっきのアドバイスは流してください。
> VBスクリプトをほとんど読めない
って事で、ワンポイント情報。
> JSを挿入する前のVBスクリプト(ASPファイル)をサーバーにUPして、
> 生成後HTML(ブラウザのソースでみることの出来るソース)を
> メモ帳などにhtmlファイルとして保存。
> それをに外部ファイル化した、JSを挿入させるとJSの
> が正常に働いているかチェックできると思います。
一口に「VBスクリプト」と言っても、大きく分けて3種類あるのをご存知ですか?
(1)ブラウザ(IE:Internet Explore)上で動作する「クライアントサイドスクリプト」
HTMLファイル(拡張子:htm/html)内に「<script>タグ」を使って記述
(ASPファイル上に記述されて、サーバ上では実行されず、そのままブラウザ上に送られるケースもある)
(2)サーバ(ASP:Active Server Pages)上で動作する「サーバサイドスクリプト」
ASPファイル(拡張子:ASP)内に、「<script runat=server>タグ」又はその省略形式の「<% %>」を使って記述
(3)WSH(Windows Script Host)上で動作する「WSHスクリプト」
VBSファイル(拡張子:VBS)に、そのまま記述
貴方が言っている「VBスクリプト(ASPファイル)」は(2)ですね。
#動作確認方法は(1)にも言及している?
で、TAKASHIさんの質問は、(1)(と多分(3))の話だと思います。
各々特徴があるので、どれが対象かは、コードを見れば、ある程度、判断可能です。
例えば・・・
「document」オブジェクトは、(2)には無いので、質問に「Document.Write 」とあった段階で、(2)じゃなさそうと言うのが分かります。
#ASPなら、出力は「document」オブジェクトではなく、「response」オブジェクトを使用する。
また、「Set objIE = CreateObject("InternetExplorer.Application")」ってやっている段階で、
(2)ではなさそうと言うのも分かります。
#サーバ上でIEを作成しても、表示されないので無意味な動作になるので・・・
(1)でわざわざIEをCreateObjectするか・・・微妙ですね・・・可能性0じゃないですが、
かなり低いですので、まあ、(3)かな?
で、「"<script language=""javascript"">" 」とやっている段階で、(1)は確実。
#て事で、私は(1)及び(3)と判断し、動作確認&回答をしてます。
TAKASHIさんへ
VBスクリプトをほとんど読めないものが、出る幕ではないかもしれませんが・・・。
JSを挿入する前のVBスクリプト(ASPファイル)をサーバーにUPして、
生成後HTML(ブラウザのソースでみることの出来るソース)を
メモ帳などにhtmlファイルとして保存。
それをに外部ファイル化した、JSを挿入させるとJSの
が正常に働いているかチェックできると思います。
掲示板や日記のスキンを作る(カスタマイズ)ときは、とりあえずその方法を
しています。
自分はCGIも読めませんので、掲示板や日記はレンタルしたものですが。
> document.write("TEST")と記載してしまいましたが、カタカナで「テスト」と
> document.write("テスト")しており、その場合うまく出力されないという意味でした、、
なるほど、文字コードの問題って事ですか・・・
> いつの間にか、場違いな質問になっておりました。
> > > objIE.Document.Write "<script language=""javascript"" src=""C:\etc\select.js"">" & vbcrlf
> > ここまでは、ぎりぎり対象内です
ので・・・一応回答を。
「charset Property」
(http://msdn.microsoft.com/library/default.asp?url=/workshop/author/dhtml/reference/properties/charset.asp)
を使って、
> > > objIE.Document.Write "<script language=""javascript"" src=""C:\etc\select.js"" charset=""shift-jis"">" & vbcrlf
としてみるとか・・・
確かに…
いつの間にか、場違いな質問になっておりました。
document.write("TEST")と記載してしまいましたが、カタカナで「テスト」と
document.write("テスト")しており、その場合うまく出力されないという意味でした、、
混乱させてしまいすみません、、
> > objIE、JAVASCRIPTの組み合わせでの質問となりますが、よろしくお願いいたします。
>
> ・・・微妙・・・ここは、VBScriptの掲示板なので・・・
> > objIE.Document.Write "<script language=""javascript"" src=""C:\etc\select.js"">" & vbcrlf
> ここまでは、ぎりぎり対象内ですが・・・
>
> > <select.js内>
> ここに関しては対象外ですね・・・
>
>
> > JAVASCRIPTにてSRC指定を行っているのですが、うまく認識がされません。
> 「認識」って何をです?
>
> 試してみましたが、「TEST」って表示されましたけど・・・
> > どうやら最終ページのURLがcatlog.aspかつ、元のソースにならないと無理なようです。
>
> もう「VBスクリプト」は関係ないって事ですね。
>
> #つまり、「環境の設定か何かの問題」って事ですよね?
> #正直納得いきませんが、貴方がそうおっしゃるなら、そうなんでしょうね。
> #これ以上の具体的な情報提供がないなら、何も判断できませんし。
多分そうみたいです。
サーバーとか、VBスクリプトとかと言う知識がほとんど0に等しいので、
よく分かりませんが。
はじめに作られた方が実際にサーバーがある場所で対応してくれないと
無理だと言うことのようです。
> どうやら最終ページのURLがcatlog.aspかつ、元のソースにならないと無理なようです。
もう「VBスクリプト」は関係ないって事ですね。
#つまり、「環境の設定か何かの問題」って事ですよね?
#正直納得いきませんが、貴方がそうおっしゃるなら、そうなんでしょうね。
#これ以上の具体的な情報提供がないなら、何も判断できませんし。
> objIE、JAVASCRIPTの組み合わせでの質問となりますが、よろしくお願いいたします。
・・・微妙・・・ここは、VBScriptの掲示板なので・・・
> objIE.Document.Write "<script language=""javascript"" src=""C:\etc\select.js"">" & vbcrlf
ここまでは、ぎりぎり対象内ですが・・・
> <select.js内>
ここに関しては対象外ですね・・・
> JAVASCRIPTにてSRC指定を行っているのですが、うまく認識がされません。
「認識」って何をです?
試してみましたが、「TEST」って表示されましたけど・・・
たびたびの質問恐縮です。
objIE、JAVASCRIPTの組み合わせでの質問となりますが、よろしくお願いいたします。
JAVASCRIPTにてSRC指定を行っているのですが、うまく認識がされません。
下記例の他には、objIE.Document.Write "document.write(""TEST"");" & vbcrlfと
いうようにselect.js内に入れてみましたが、これもダメでした。
特殊な書き方があるのでしょうか?
いつも聞く側で申し訳ありません…
〜〜
objIE.Document.Write "<script language=""javascript"" src=""C:\etc\select.js"">" & vbcrlf
objIE.Document.Write "</script>" & vbcrlf
<select.js内>
document.write("TEST");
さっそくの御回答ありがとうございました。
変数での検証はできました!ありがとうございます。
ただ、配列はダメなんですね…
私もやったところ、TEST(i)のiがJAVASCRIPT上ではうまくとれませんでした。
おっしゃるとおり、TEST(0)、TEST(1)、TEST(2)、、、、と直書きしないと
ダメでした。
もしもし、何か閃いた際にはご教授をお願いいたします。
それでは、失礼いたします。。
> > もう1個甘えて質問させて貰いたいのですが、VBSで設定した変数配列を
> > objIEオブジェクトのJAVASCRIPT中で使用する事は可能でしょうか?
>
> objIEからは、呼び出しもとのVBSが見えない(認識できない)ので直接参照するのは無理でしょうね。
>
>
> 変則的ですが・・・
> > objIE.Document.Write "var JAVA_TEST = ""VBS_TEST"";" & vbcrlf
> を
> > objIE.Document.Write "var JAVA_TEST = """ & VBS_TEST & """;" & vbcrlf
> とすれば、とりあえずは値を渡せるでしょうけど・・・
> #配列だと、1要素ずつ書いていくことに・・・
catlog.aspとtoiawase3.aspとの違いは、catlog.aspは、
作成者が作ってまったく手を加えていないファイルです。
ちなみにカタログ請求用専用に作られていました。
toiawase3.aspは総合的に問い合わせが出来るように、catlog.aspをカスタマイズ
したモノです。
作成者及び典填天展さんに見てもらってエラーがないことが
明らかになったのでファイル名をcatlog.aspにしてあげてもらったのですが、
やはり送信できません。
どうやら最終ページのURLがcatlog.aspかつ、元のソースにならないと無理なようです。
> > 同じHTMLファイルに、この状態のASP
> > http://www.asahihouse.jp/toiawase-2.htm
> > (上URLのHTMLファイルは、拡張子をHTMLにしメールアドレスを存在しないものに
> > 変えたもの)
> > との組み合わせの状態では送信出来てます。
> また、以前見ていただいたソースの actionの部分をaction=""catalog.asp""に変えると、画面にカタログが・・・と出ますが、送信は出来ます。
では、catlog.aspとtoiawase3.aspとの違いは「具体的には」何です?
[ ページ ] 1 2 3 4 5 6 7 8 9 10 Next -> #313から#273まで30件を表示しました。
■現在の記録記事数:278件
[ 未読ポイント設定 ] 現在、「未読読み機能」は無効 になっています。
「未読読み機能」を有効にし、未読ポイントを設定するとその記事より新しい記事のみ表示することができます。
Myカスタマイズ で有効にできます。
Amazon.co.jp ウィジェット
トップ
- 前に戻る(B )
THE lg-Board REVOLUTIONS Copyright© 2004-2010 リトルグレイ