IEコンポーネントを使い倒すスレ
レス数が900を超えています。1000を超えると表示できなくなるよ。
0001IUnknown
NGNGIEコンポーネントを利用したブラウザのプログラミングに関する情報の交換及び再
利用を目的とした総合情報スレッドです。
=====================================
最近IEコンポーネントを利用してブラウザを作るプログラマが増えてきました。こ
れから自作してみようという人も多いでしょう。コンポーネントを貼り付けるだけ
なら誰でも出来ますが複雑な制御を行うにはそれなりの経験や知識が要るようです。
私自身が知りたいのも山々ですが、似たような質問が分散するのを避けるためにも
統一しましょう。ブラウザ作者、COM に精通した方大歓迎です。もちろん公開した
くない "禁断のテク" もあると思いますが、そこは各人の判断ということでお願い
します。
※ 開発言語は問わないことにしますので質問するときはその辺を踏まえてお願いし
ます。
0873デフォルトの名無しさん
NGNGドキュメントを1つ1つ見ているんだよ。
0874デフォルトの名無しさん
NGNGこのスレを頭から読むことをすすめる。
みんな、色々やってたyp!
0875デフォルトの名無しさん
NGNGリファレンスくらい、大した量じゃないんだから、目を通しておけ。
一字一句読まなくても、どんな機能があるか目を通しておけば、ここで単純な質問をする手間も無くなるぞ。
0876山崎 渉
NGNG__∧_∧_
|( ^^ )| <寝るぽ(^^)
|\⌒⌒⌒\
\ |⌒⌒⌒~| 山崎渉
~ ̄ ̄ ̄ ̄
0877デフォルトの名無しさん
NGNG0878デフォルトの名無しさん
NGNG0879デフォルトの名無しさん
NGNGHTMLを埋め込んで外部操作。
0880デフォルトの名無しさん
NGNGを作成しているのですが、個々の環境のIEのバージョンに依存したくないので、
必要なDLLなどをアプリ本体に埋め込みたいのですが、何かいい
手はないでしょうか?
アドバイスよろしくおねがいします
0881デフォルトの名無しさん
NGNGIE4しか入ってないのに6以降の機能を使いたいとかそうゆうこと?
必要なDLL多いし、レジストリ登録もあるし、元々の環境壊さずとかなったら、無理。
第一、やったらMSに訴えられるおそれ有り。
IE以外のコンポを探すべし。
0882デフォルトの名無しさん
NGNGGeckoベースのブラウザを作ろう。
http://pc2.2ch.net/test/read.cgi/tech/1023546699/
0883880
NGNGありがとうございましたー
0884デフォルトの名無しさん
NGNGVB6.0でWebBrowserコントロールを貼り付けて処理をしています。
Form_Loadに WebBrowser.Navigate "about:blank" を書き、
WebBrowser_DocumentCompleteで
WebBrowser.Document.body.Style.innerHTML = _
"<textarea id='text1'>ほげほげ(実際は1KBくらいの文字列)</textarea>"
を書いているのですが、WebBrowser.Document.body.Style.innerHTML
の反映が物凄く遅い(内容が表示されるまで10秒前後かかる)のです。
textarea 内の文字列をなしにするとすぐに反映してくれます。
この原因は何でしょうか? また、これは回避できるものなのでしょうか?
どうか宜しくお願いします。
0885デフォルトの名無しさん
NGNG関係無いかもしれんが、
WebBrowser.Document.body.Style.innerHTML
っておかしくないの?
WebBrowser.Document.body.innerHTML
じゃない?
0887あぼーん
NGNG0888あぼーん
NGNG0889デフォルトの名無しさん
NGNG0890デフォルトの名無しさん
NGNG昔はこんなバカはム板にはいなかったもんだがなあ。
0891デフォルトの名無しさん
NGNG0892デフォルトの名無しさん
NGNG0893デフォルトの名無しさん
NGNGアプリが追加されたけど、
このアプリを自作するための仕様って公開されてるのかな?
0894893
NGNG0895デフォルトの名無しさん
NGNG向こうも読んでいる方にはマルチになります。すいません
Delphi6 Pro 使ってます。TWebBrowser よりは、EmbeddedWB を使った方がいいと言われ、
EmbeddedWB をインストールしようと思いましたが、TWebBrowser があるせいで
インストールエラーが起きたので削除してからインストールしました。インストール方法は
これでよろしかったのでしょうか?
あと、EmbeddedWB.pas の中で MSHTML_tlb と SHDocVw_tlb が use されているのですが、
これを MSHTML と SHDocVw に変更しても問題無いでしょうか?
もうひとつ、ActiveX のコンポーネントパレットの所を見ると物凄い数のコンポが入りましたが、
これは何でしょうか?(((( ;゚Д゚)))
0896884
NGNG0897895
NGNGあぁ…。俺 VB よく知らないんだけど、こうじゃ駄目かい?
WebBrowser.Document.write( "<textarea id='text1'>ほげほげ(実際は1KBくらいの文字列)</textarea>" )
0898デフォルトの名無しさん
NGNG漏れも使ったことは無いが、window.offscreemBufferingを調べるとよろしいかと。
0899デフォルトの名無しさん
NGNGoffscreenBufferingな。
0900あぼーん
NGNG0901あぼーん
NGNG0902あぼーん
NGNG0903デフォルトの名無しさん
NGNGピュ.ー ( ^^ ) <これからも僕を応援して下さいね(^^)。
=〔~∪ ̄ ̄〕
= ◎――◎ 山崎渉
0905デフォルトの名無しさん
NGNGIEコンポーネントはVBSでちょっと触っただけなので、
見当違いのレスかも知れんが、
textarea内の文字列をなしにするとすぐに反映されるなら、
textareaをつくってから、そこに文字列を書いたらどう?
0906あぼーん
NGNG0907あぼーん
NGNG0908あぼーん
NGNG0909あぼーん
NGNG0910884
NGNGあっちこっち修正して半分弱まで抑えきることに成功しました。
どうしてもダメなトコは他の処理を並行でやって誤魔化します(;´∀`)
>>905
textareaのスタイルをいじるのでそのときにinnerTextで文字列を入れるように
してみました。
あとおまじない程度にtimeBeginPeriod(1)を入れてみました。
なんか凄いようです。
http://pc2.2ch.net/software/kako/1042/10422/1042285221.html
の>>320以降と
http://pc3.2ch.net/software/kako/1041/10410/1041058846.html
の>>582以降及び>>817以降
多くのレスが貰えて嬉かったです。皆様ありがとうございました。
0912デフォルトの名無しさん
NGNGttp://www.euromind.com/iedelphi/getting_started.htm
ここ読むと、
最初から入ってるShDocVwとMSHTMLは外して、
ShDocVw_TLBとMSHTML_TLBを取り込むのを推奨。って書いてある気がするけど、
英語苦手だから違うかもしんない。
あとEmbeddedWB使うなら、
このサイトのTEmbeddedWB関連は一通り目を通しておいた方がいいかも。
でないと無駄に悩む羽目になりかねない。
ActiveXタブのは、TInternetExplorerとかの事言ってるなら、
IE操ったりとか。
0913山崎 渉
NGNG0914895
NGNGレスありがとう
ShDocVw_TLB と MSHTML_TLB どうも好きじゃないんだよね。
これ、Pro 以上には _TLB 無しが標準で入ってくるから、
TWebBrowser 消して、ActiveX コントロールをコンポとして
入れる時に自動生成されたんだけど、その時に Delphi が
固まった感じになったんだよね。で、Imports ディレクトリ見たら、
MSHTML_TLB.pas が 9MB だったw
> ActiveXタブのは、TInternetExplorerとかの事言ってるなら、
> IE操ったりとか。
最初コンポパレット見たら、凄い数のアイコンが出てたのでバグったか?
と、思いましたが、それっぽい名前が出てますねぇ…。多分使うことないと思うが
0915デフォルトの名無しさん
NGNG0916イベントシンク
NGNGCode Guruのhttp://www.codeguru.com/ieprogram/dhtmlhook.htmlにある
サンプルプロジェクトを実行してみたのですが、コンパイルエラーやリンク
エラーで実行できませんでした。
しかしコメントを読み、なんとかエラーはなくなり実行はできたのですが、
どうしてもInvokeでイベントをキャッチしてくれません。正常に動作させる
方法をご存知の方がいたら、アドバイスをいただけませんか。
0917デフォルトの名無しさん
NGNGあんま詳しくないけど、
イベントを受け取るためにIDispatchを実装したクラスを用意して、
IConnectionPointContainer::FindConnectionPointと
IConnectionPoint::Adviseを使えばInvokeメソッドでイベントを受け取れるはず。
あと、この辺が参考になるかも。
ttp://www.eu.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/jpdnguion/htm/drgui082399.asp
0918デフォルトの名無しさん
NGNG下の方法でそのまま保存は出来ました。
http://216.239.57.104/search?q=cache:rXPLfATVHocJ:n76cd-01p05.ppp11.odn.ad.jp/old/a3975.html+m_pView-%3EGetHtmlDocument()&hl=ja&ie=UTF-8
--------------------------------------------------
ファイルに保存する例です。
#include <comdef.h>
#include <afxpriv2.h>
void CXXXXDoc::Serialize(CArchive& ar)
{
if (ar.IsStoring()) {
IPersistStreamInitPtr pPersistStmInit;
// HTMLドキュメントのIPersistStreamInitを得る
pPersistStmInit = m_pView->GetHtmlDocument();
if ((bool)pPersistStmInit) {
CArchiveStream stm(&ar);
pPersistStmInit->Save((IStream*)&stm, VARIANT_TRUE);
}
}
}
IEでいうところの「完全」な保存ではありません。
あれをやるには、IHTMLElementをたぐっていかないとできないと思います。
--------------------------------------------------
で、IEでリンクもローカルなものに自動的に変更して保存しているのを
やりたいのですが、これは上で書いてあるように自力でhtmlのリンクを
解析する必要があるのでしょうか?
お手軽な関数とかが用意されているのであればそれを利用したいのですが。
よろしくお願いします。
0919v
NGNGスレンダーなボディーが更に色気を倍増させている気がします。
じっくり見つめながらフェラをし、小さめのオマンコに男根を導いていきます。
こういう年の取り方をしたいですね。
無料ムービーからどうぞ
http://www.excitehole.com/
0920山崎 渉
NGNG│ ^ ^ │<これからも僕を応援して下さいね(^^)。
⊂| |つ
(_)(_) 山崎パン
0921デフォルトの名無しさん
NGNG0922デフォルトの名無しさん
NGNG作成しています。(VC++ 6.0です。)
そこで使用している、CHttpFile::EndRequestメソッドについて
質問があります。
アプリでは、OpenRequestにて、HTTPにPOSTで接続し、
その後、
�@SendRequestEx
�AWriteString
�BFlush
�CEndRequest
で要求を送信し、
その後、サーバからの回答をReadしています。
ほとんどの場合は正常に動作するのですが、まれに、�CのEndRequest
で固まってしまうことがあります。(try〜catchでも捕まらない・・・)
そもそも、上記�Bのメソッドは、何のために呼ばれているのかが
よくわかりません。
サーバ⇔クライアントのパケットをキャプチャしてみたのですが、
�@のタイミングでHTTPヘッダ送信、
�Aのタイミングでアプリからのデータ送信
を行っているようですが、�Cのタイミングではサーバに対し、何の
通信もしていないようでした。
この、EndRequestは、何を持って成功としているのか?
また、どんなときにエラーとなるのか?
をもしご存知の方がいましたら、教えてください。
レス数が900を超えています。1000を超えると表示できなくなるよ。