Curl Global Community
FireFoxとCurl - Printable Version

+- Curl Global Community (https://communities.curl.com)
+-- Forum: Discussions (https://communities.curl.com/forumdisplay.php?fid=1)
+--- Forum: General Curl questions (https://communities.curl.com/forumdisplay.php?fid=2)
+--- Thread: FireFoxとCurl (/showthread.php?tid=1003)



FireFoxとCurl - okm - 11-05-2013

こんにちは。
FireFoxの設定なのか、Curlプログラムになにか書けば回避できるのか、そもそも誰も発生していない事象なのか
ご存知でしたら教えてください。

現在、サーバのhtdocs以下にフォルダを作って、.curlを配置しています。
FireFoxからそのCurlを呼ぶと、1度目は起動するのですが、2度目が起動しません。
3度目は起動するが、4度目が起動しない・・というように順番に起動する/しない状態となっています。
※Firefox:16.0.2
  Curl :7.0
  OS  :Windows7
同じ事象が発生する方、原因・回避方法をご存知の方いらっしゃいますでしょうか?

※FireFoxで起動しているWebシステムからCurlを起動しています。
Curl7RTEのシステム要件ではFireFox16は対応とありますが、16.0.2はCurl7サポート外でしょうか?
もしサポート外のため発生している事象である可能性が高いなら、WebシステムからIEでCurl起動させる方法を教えていただきたく。
よろしくお願いいたします。




RE: FireFoxとCurl - okm - 11-05-2013

追記情報です。
サーバにある.curlの処理内容として、ローカルにあるVBSファイルを起動する以下の処理をしております。
この処理があると該当事象が発生します。
|| VBS起動
{spawn-host-process "rundll32.exe", args}
つまり、以下の条件で発生します。
FireFox × Curl × {spawn-host-process "rundll32.exe", args}



RE: FireFoxとCurl - okm - 11-06-2013

どうでしょうか?
どなたか再現しませんか?

FireFox と HostProcess を使った処理の場合、Curlが実行される/されないが交互に起こります。

なお、以下をみるとFireFoxのバージョンが16とあり、16.0なのか、16+なのか不明です。
念のため、16.0でも試しましたが現象再現しました。
http://www.curlap.com/download/old_rte/v7/system.html


よろしくお願いします。


RE: FireFoxとCurl - umemura - 11-06-2013

私の個人的な環境では、FireFoxを日常的に使っていますが、再現したことはないです。
rundll32.exe で何かDLLを実行しているのでしょうか?
実行しているのであれば、そのDLLの情報、
また、「Curlが起動しない」という現象の、具体的な情報(エラーメッセージが出る、
フリーズするなど)を挙げられるとよいかも知れません。



RE: FireFoxとCurl - okm - 11-07-2013


umemuraさま

ありがとうございます。

どうやら原因がわかってきました。

umemuraさまのコメントから、rundll32.exe で実行しているtest.VBSをシンプルにして原因追及できました。
-test.VBS---------------------------------
Set IE = CreateObject("InternetExplorer.Application")
IE.Visible = True
IE.Navigate("http://google.co.jp")
-----------------------------------------

わかっていた再現条件は以下でした。
・Curlを毎回シャットダウンすると問題ない
・FireFoxをいったん終了させると問題ない

色々と検証していくと、Curlの処理の最後にhtmlを呼んで自分のウィンドウを閉じている箇所があるのですが
ウィンドウを閉じることができずなにか命令だけ残っていて、それとHostProcessが影響していたのでしょうか・・?
※ウィンドウを閉じる処理はJavaScriptですが・・。
ひとまず、ウィンドウを閉じるhtml、FireFoxの設定等を見直します。
失礼しました。


-------以下、余談です--------------------

ちなみに、Curlが起動しない というのはエラーメッセージもフリーズもしません。

以下のようなstart.curlを動かしていますが
2回目に実行したときは、画面には「起動中です..」の文字が表示されていますが、{output "start"}がコンソールに表示されません。
そのため、起動していないと考えています。
※「起動中です..」はキャッシュで表示されているだけだったんでしょうか・・?
-------------------------------
{curl 7.0 applet}
{curl-file-attributes character-encoding = "shift-jis"}
{document-style PlainDocument}
{import * from CURL.RUNTIME.HOST-PROCESS}
{output "start"}
{text 起動中です..}

{let query:String = {get-the-applet}.url.query}
{let hash-param:{HashTable-of String, String} = {new {HashTable-of String, String}}}

~~省略~~
|| VBS起動
{{spawn-host-shell "C:\\xxx\\test.vbs"}}
{browse-url target = "_self", {url "http://128.1.xxx.xxx/images/exit.html"}}
-------------------------------