ウィルスソフトで、IEからファイルのダウンロードが一発でできない。
昨日以降(0) 2日前以降(0) 3日前以降(0) 4日前以降(0) 5日前以降(0)
Message#7 2017年6月5日(月)17時08分 From: 困ってます君 | 返事 削除 変更 |
待機ができないのは、 ウイルススキャン中は、 READYSTATEは4になっていました。 もしリンクがなければ、待機しつづける、 というコードにすればいいのでしょうか? Debug.Print objIE2.ReadyState Debug.Print objIE2.Busy 4 False > このようにしたら遷移したドキュメントのURLを取得できました。 > > Dim objShell, objIE2 As Object > Set objShell = CreateObject("Shell.Application") > Set objIE2 = objShell.Windows(objShell.Windows.Count - 1) > > ソースはここでした。 > https://teratail.com/questions/9052 > > > みらーのメッセージ(#4)への返事 > > > > ありがとうございます。 > > > > ページが遷移しても、 > > 最初のie.documentのオブジェクトは変更していないので、 > > ie.document.urlは前のアドレスのままで、 > > リンクがなくエラーとなってしまいます。 > > > > 遷移した、今開いている新しいページを > > ie.documentにする方法はありますか? > > > > 新しいオブジェクトを作成しなおしすればいいでしょうか? > > > > > 困ってます君のメッセージ(#3)への返事 > > > > > > ページ上にリンクが出てくるのであれば、 > > > ページが遷移したあとに、innertextが"http*"で始まる<a>タグをループで探せば大丈夫ではないでしょうか。 > > > > > > For Each obj In IE.document.getElementsByTagName("a") > > > If obj.innertext Like "http*" Then > > > obj.Click > > > End If > > > Next obj > > > > > > > みらーのメッセージ(#2)への返事 > > > > > > > > ありがとうございます!! > > > > > > > > リンクは、サイト上のページにでてきます。 > > > > サイトのURLが変更になり、ループで待機ができない感じです。 > > > > > > > > このようなページに変更します。 > > > > > > > > https://kc.mcafee.com/corporate/index?page=content&id=KB80729&viewlocale=ja_JP&locale=de_DE > > > > > > > > > > > > > > > > > 困ってます君のメッセージ(#1)への返事 > > > > > > > > > > リンクというのは、サイト上に出てくるのでしょうか? > > > > > それともダイアログでしょうか? > > > > > > > > > > 「1分経ったらクリック」する場合、 > > > > > 仮にスキャンに1分以上かかった場合はアウトですよね。 > > > > > > > > > > そのリンクが出てくるまで、ループで待機するのがベストだと思います。 > > > > > それとsendkeysも確実性がないので、使うのはオススメしません。 > > > > > > > > > > > > > > > > VBAでファイルの保存ボタンをおし、 > > > > > > application.sendkeysで保存、まではできたのですが、 > > > > > > > > > > > > うちの会社ではウイルスチェックのソフトを使っており、 > > > > > > (McAfee web gateway) > > > > > > 一度、ある特定の場所に、ファイルが保存されて、 > > > > > > そこでウイルススキャンが行われ、 > > > > > > 問題なければ、 > > > > > > 画面がかわり、ダウンロードのリンクが表示され、 > > > > > > そこをもう一度、クリックしたら、 > > > > > > やっとダウンロードできます。 > > > > > > > > > > > > 問題は、ウイルススキャンの時間が、 > > > > > > ファイルのサイズによって違い、 > > > > > > 画面が変更する時間も長かったりするので、 > > > > > > エラーになってしまいます。 > > > > > > > > > > > > このような場合は、 > > > > > > 例えばどのような場合でも1分停止してから > > > > > > リンクをクリック、 > > > > > > というような方法しかないでしょうか? > > > > > > > > > > > > 同じような経験された方がいらっしゃいましたら > > > > > > 教えて頂けると幸いです。 |
昨日以降 2日前以降 3日前以降 4日前以降 5日前以降