[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 2chのread.cgiへ]
Update time : 02/17 11:13 / Filesize : 145 KB / Number-of Response : 555
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

IEコンポーネントを使い倒すスレ Ver.2



1 名前:デフォルトの名無しさん [2006/04/16(日) 21:08:42 ]
=====================================

IEコンポーネントを利用したブラウザのプログラミングに関する情報の交換及び再
利用を目的とした総合情報スレッドです。

=====================================


最近IEコンポーネントを利用してブラウザを作るプログラマが増えてきました。こ
れから自作してみようという人も多いでしょう。コンポーネントを貼り付けるだけ
なら誰でも出来ますが複雑な制御を行うにはそれなりの経験や知識が要るようです。
私自身が知りたいのも山々ですが、似たような質問が分散するのを避けるためにも
統一しましょう。ブラウザ作者、COM に精通した方大歓迎です。もちろん公開した
くない "禁断のテク" もあると思いますが、そこは各人の判断ということでお願い
します。

※ 開発言語は問わないことにしますので質問するときはその辺を踏まえてお願いし
ます。

(以上、前スレより)

IEコンポーネントを使い倒すスレ
pc5.2ch.net/test/read.cgi/tech/982930049/

かなり前のスレですが続編を立てました。

75 名前:デフォルトの名無しさん mailto:sage [2006/07/14(金) 11:39:39 ]
VS6.0だと古くてヘッダに定義がないのかも。
実際に俺の環境ではVS.NET2003とVS6.0を入れてるけど、6.0にはIHTMLDOMNodeのクラス定義がないね。
VS6.0の最新のサービスパック入れたらなおるか、.NET買うかしないと。

76 名前:デフォルトの名無しさん [2006/07/14(金) 20:42:38 ]
すみません。妥当なスレが分らなかったのでここで質問させてください。

IE7の日本語ベータ3をインストールしたら、InternetOpenUrlにシフトJIS
のファイル名を使っているプログラムがエラーを起こすようになりました。

β版だからといえばそれまでですが、何か情報を持ちの方、または
対処方法、ご存知であればお教えください。

補足として、

・IE6以前とIE7ベータの英語版では問題なかった。
・IE7日本語β3からアドレスバーにS-JIS日本語名を含むURLを直接入れた場合は読み出せる。
・InternetOpenUrlでエラーが起きたとき、サーバーのログを見ると、日本語に該当する部分が
 著しく欠損した状態(文字化けとか言うレベルじゃなく)でアクセスされている模様…。

よろしくお願い致します。(日本語のUrlを使うなというのは横へ置いておいて…)


77 名前:デフォルトの名無しさん mailto:sage [2006/07/14(金) 21:06:10 ]
正式版になってから言え

78 名前:デフォルトの名無しさん mailto:sage [2006/07/14(金) 21:49:35 ]
>>76
InternetOpenUrlWだとどうなる?

79 名前:76 mailto:sage [2006/07/14(金) 22:19:03 ]
>>78
プログラムがANSIなのでW版はちょっと試していませんが、
ひとまず自分でURLの漢字部分をutf8エンコードして回避しました。

どうもありがとうございました。


80 名前:74 mailto:sage [2006/07/14(金) 22:33:46 ]
>75
.NETではIHTMLDOMNodeは使えるみたいですね。
あとVS6.0のSP6をインストールしてみましたが使えませんでした。
やはり.NETを買うしかないみたいですね。
ありがとうございました

81 名前:76 mailto:sage [2006/07/14(金) 22:33:46 ]
>>78
W版を試してみたところ、InternetOpenUrlWだと何も考えなく
てもうまく行きました。

自分で%E7……て変換しなくてもやってくれるようです。

重ねてありがとうございました。

……自分で変換したさっきの苦労はorz

82 名前:デフォルトの名無しさん mailto:sage [2006/07/14(金) 22:56:21 ]
別ドメインのフレームのIHTMLDocument2を取得するにはどうすればよいでしょうか

83 名前:デフォルトの名無しさん [2006/07/15(土) 21:25:02 ]
質問です。
XMLデータをメモリから設定すると、HTMLとして表示されてしまうのですが、
設定するデータの属性を設定する方法があるのでしょうか?
現在は、一度「.xml」な一時ファイルを吐き出してそれを読み込ませる方法にしています。




84 名前:デフォルトの名無しさん mailto:sage [2006/07/15(土) 22:33:11 ]
ちゅんと doctype 付けてる?


85 名前:83 mailto:sage [2006/07/16(日) 05:13:09 ]
>>84
つけていませんでした。DOCTYPE見ているのですか。
試してみます。どうもです。


86 名前:デフォルトの名無しさん [2006/07/18(火) 03:06:57 ]
前スレででていたUrlMkSetSessionOptionを使って
ユーザエージェントを変更したいのですが、変更されません。
設定するタイミングがあるのかと、いろんな箇所で入れて、
UrlMkGetSessionOptionで取得すると取得される値では変更はされているようでしたが
printenv.cgiなどでみると変更されていません。
分かる方いますでしょうか?


87 名前:86 mailto:sage [2006/07/18(火) 03:12:59 ]
navigator.userAgentが変更されていました。
UrlMkSetSessionOptionは、Javascriptのnavigator.userAgentを変更する関数で、
HTTPプロトコル上のUser-Agentヘッダーオプションは変更しない・・?


88 名前:デフォルトの名無しさん mailto:sage [2006/07/18(火) 04:43:57 ]
確認君とかで見ると普通に変更されるよ。

89 名前:86 mailto:sage [2006/07/18(火) 05:21:24 ]
>>88
確認君でも見ましたが、変更されていませんでしたが・・・。IE7 XPPro SP2です。
お詳しいようなので、いまさらな質問ですが、
UrlMkSessionOptionは、プログラム内で一度実行したらそれでいいのでしょうか?
実行するタイミング(たとえば、コンポーネントを起動後など)などありますか?


90 名前:デフォルトの名無しさん mailto:sage [2006/07/18(火) 14:03:25 ]
IEコンポーネントを作った後にUrlMkSessionOptionしてるだけだよ。IE6+XPPro
ただ、こっちはなぜか実行時1回こっきりしか変えられないんだよなぁ・・・。


91 名前:デフォルトの名無しさん [2006/07/21(金) 03:39:22 ]
AxWebBrowserを使用して、画面遷移を自動で行って、処理を行うアプリを
書いているのですが、formのsubmitで、詰まっています。

環境は、XPsp2、IE7β2です。
言語はC#。

ソースはこんな感じ。

IEnumerator forme = myDocument.forms.GetEnumerator();
forme.MoveNext();

mshtml.HTMLFormElement form = (mshtml.HTMLFormElement)forme.Current;

form.submit();

nextProcess();


submitを行い、画面遷移が完了したところで、次の処理(nextProcess())を行いたいのですが、
上記の方法では、次の処理が終わってから画面遷移をしてしまいます。

間で
form.submit();
while(axWebBrowser1.ReadyState != SHDocVw.tagREADYSTATE.READYSTATE_COMPLETE);
nextProcess();

とかしても、ステータス判定のところで無限ループが発生してしまい、お手上げです。
どなたか、ご教示ください・・・。


92 名前:デフォルトの名無しさん mailto:sage [2006/07/21(金) 11:48:53 ]
その nextProcess() をしない場合どうなるの?


93 名前:デフォルトの名無しさん [2006/07/21(金) 20:36:20 ]
IEコンポーネントでとあるHPを表示させているのですが、
そのHPの中でFocus()をしていて、そのHPをプログラム側で読み込むと
表示しているアプリを前面に持っていってしまいます。
(何回もそのHPを更新をするのでその都度前面に来るとかなり鬱陶しいです。)

何とかこれを回避したいのですが何か良い方法はありませんでしょうか?
Win2000+VC6.0+IE6です。よろしくお願いいたします。




94 名前:デフォルトの名無しさん [2006/07/23(日) 07:46:18 ]
>72
IHTMLDocument2::elementFromPoint

95 名前:デフォルトの名無しさん mailto:sage [2006/07/23(日) 20:58:42 ]
IWebBrowser.Navigate2(..)の第一引数にマイコンピュータとかのCLSID
::{20D04FE0-3AEA-1069-A2D8-08002B30309D}
を文字列で渡す場合、

IE6(XP sp2) だと正常に動作するのに、IE7(Vista β2)だと
「保護されているメモリに読み取りまたは書き込み操作を行おうとしました……」
ってエラーがでるんですが
なんとかなりませんかね?

96 名前:デフォルトの名無しさん [2006/07/24(月) 00:17:00 ]
質問です。
.zipファイル等のリンクをクリックしてダウンロードする際の保存先のパスや、
ファイル名指定ダイアログでキャンセルした等の情報は取れないんでしょうか?


97 名前:デフォルトの名無しさん mailto:sage [2006/07/24(月) 23:59:32 ]
JavaScriptを実行する方法はありませんか?
DocumentComplete時に初期設定JavaScriptを実行するようにしたいのです。

>>93
荒業で以下のJavaScriptを実行する手もある。
window.focus = function(){ return false; }

98 名前:97 [2006/07/25(火) 00:00:34 ]
質問なのにsageちゃった。せっかくだからage

99 名前:デフォルトの名無しさん [2006/07/25(火) 01:09:45 ]
HtmlElementCollection links = webBrowser1.Document.Links;
foreach (HtmlElement link in links)
とかやってるのですが、linkのなかに含まれる
URLだけを拾うにはどうしたらいいでしょうか?
環境は.net2です。


100 名前:デフォルトの名無しさん mailto:sage [2006/07/25(火) 04:44:03 ]
IHTMLAnchorElement
get_href

101 名前:デフォルトの名無しさん mailto:sage [2006/07/25(火) 14:17:33 ]
>>97
>>58のリンク先に載ってる。
だけどVC.NET2003だとサンプル動かないし、COMよくわからないから死にそう。

102 名前:97=58 [2006/07/25(火) 15:14:55 ]
>>101
>>58は俺です(笑。 >>58はJavaScriptのロジックと、C++のロジックを結びつける方法ですね。
>>97の質問は自作IEコンポでどんなページを開いても、開いた最初にinit.jsなどの初期設定JavaScriptを実行したいのです。

>だけどVC.NET2003だとサンプル動かないし、COMよくわからないから死にそう。
サンプル動かなかった?コンパイルは通るけど、なんか赤ばってんのダイアログがでる、
っていう問題だったらキャンセルだか無視ボタンだかを押し続けたら動いたような気がしたけど。
まあ、サンプル動いてもあのソースめちゃくちゃ長いし複雑だったから解析大変だけどね。
JavaScriptのロジックにC++のロジックを埋め込む方法が知りたいのなら軽く解説しますよ。
>>58のリンク先にあるイベントを埋め込む方法は最終的にはわからなかったけど。

103 名前:97 [2006/07/25(火) 15:25:15 ]
と思ったら簡単に見つかりました。
IHTMLWindow2のexecScript使えばいいのね…。

msdn.microsoft.com/library/default.asp?url=/workshop/browser/mshtml/reference/ifaces/window2/window2.asp
www.ultrasync.net/yofune/?Prog%2FWin32%2FIE%A5%B3%A5%F3%A5%DD%A1%BC%A5%CD%A5%F3%A5%C8#rab3bb29



104 名前:99 mailto:sage [2006/07/25(火) 22:44:41 ]
>>100さん
レスありがとうございました。
IHTMLDocument2 links = (IHTMLDocument2)webBrowser1.Document.DomDocument;

string temp = "";
IHTMLAnchorElement link;
foreach (IHTMLElement lin in links.links)
{
if (lin.tagName.ToLower().Equals("a"))
{
link = (IHTMLAnchorElement)lin;
temp = link.href;
}
}
みたいな感じにしました。

105 名前:93 [2006/07/26(水) 18:39:05 ]
>97
レスありがとうございます。

CComQIPtr<IHTMLWindow2> pHW2;
pDoc->get_parentWindow(&pHW2);
BOOL ret = pHW2->execScript(L"window.focus = function(){ return false; }",L"JavaScript",NULL);

こんな感じでJavaScriptを実行してみましたが、ダメでした。
retにS_FALSEが入り失敗します。何かfocusをさせないうまい方法は無いものでしょうか?


106 名前:97 mailto:sage [2006/07/26(水) 23:17:13 ]
>>105
execScriptの3番目の引数がNULLでは駄目なのでは?
↓これでどうよ?
VARIANT result;
VariantInit(&result);
BOOL ret = pHW2->execScript(L"window.focus = function(){ return false; }", L"JavaScript", &result);

あ、execScriptのサンプルありがとう。


107 名前:97 mailto:sage [2006/07/26(水) 23:19:26 ]
>>105
の前にwindow.focus = function(){ return false; } で要求した動作を満たしてる?
window.focus()メソッドが完全に無効になっちゃうけど、それでもかまわないの?

108 名前:デフォルトの名無しさん [2006/07/27(木) 23:19:27 ]
質問です
やりたい事:Webアプリケーションを自動で操作するスタンドアローンアプリを作りたい

1 フレームがある場合どうすればよい?
2 別ウインドウが開く場合どうする?
3 画面遷移完了はどのイベントを受信することで判る?
4 操作アプリ起動時に、既に開いているIEオブジェクトを取得して操作できる?

よろしくです

109 名前:93 [2006/07/27(木) 23:26:31 ]
97さん
レスありがとうございます。
>106
3番目をNULLではなく、Variant変数を渡したら
retにはS_OKが返ってきました。
しかし、どういうわけかfocusしてしまいます。

>107
取り合えず手詰まり状態なので、何でもやってみようという感じです。

必要なのはHPの中の文字だけなので、HPを表示しているIEコンポは
別Windowにして非表示にしてみたのですが、そのページを再表示すると
その非表示のWindowにFocusがあたって、今まで前面にいたWindowの
Focusが外れてしまいます。うーむ困ったものです。


110 名前:97 mailto:sage [2006/07/28(金) 00:18:29 ]
>>109
再表示した時にもう一度execScript実行してる?
ドキュメントを再読み込みしたら、window.focusの中身はまた元々のfocusメソッドに戻ってると思うよ。
DIID_DWebBrowserEvents2のDownloadCompleteイベントを監視して毎回、window.focus無効にしないと駄目だぜよ。
(DocumentCompleteは再読み込みでは発生しないのでDownloadCompleteイベントがいいです)

111 名前:93 [2006/07/28(金) 23:35:16 ]
>>110
97さん
DownloadCompleteイベント時に常にexecScript()をしてみたのですが
ダメでした。やはりfocusがあたってしまいます。

ちょっと思ったのですが、focusはDownload中にScriptとして読み込まれ、
実行されるわけですよね?だからDownloadComplete時にfocusを無効にしても
遅いような気がしてきました。BeforeDownloadですとDocumentが取れないですし、
これから読込むページのfocusを無効にするのは無理なのかな?という気が
してきました。

あとDownload前に現在のForegroundのHWNDを保持しておいて、DownloadComplete後
保持したHWNDでSetForegroundWindow()をするという方法も考えたのですが
再読込み時に現在前面にいるWindowのfocusが一瞬外れてしまうので、
余り使いたくないですね。

他に何か良い方法が無いものでしょうか?


112 名前:97 mailto:sage [2006/07/29(土) 00:38:29 ]
>>1
>ちょっと思ったのですが、focusはDownload中にScriptとして読み込まれ、
>実行されるわけですよね?だからDownloadComplete時にfocusを無効にしても遅いような気がしてきました。
まぢですか。と思ってやってみたら本当ですね。
私は標準で用意されてるwindowクラスのmoveToやらmoveByなどのメソッド書き換えて、
別の動作にさせたいという要求があったのですが同じ理由で無理そう。

そうなるとちょっと良い方法はわかりません。困りましたw

113 名前:デフォルトの名無しさん mailto:sage [2006/07/31(月) 01:24:46 ]
今まで表示済みのページに対してJavascriptを適用するのに
わざわざDocumentのwriteで書き直しを行っていたのですが、
execScriptなんてのがあったのですね。
大変参考になりました、ありがとうございます。>>103


ちなみに、BSTR型は、ただのワイド文字列とは違うので(先頭が文字列長になっています)
CComBSTR等で包んであげると良いです。

execScript(CComBSTR("window.focus = function(){ return false; }"),CComBSTR("JavaScript"),NULL);




114 名前:デフォルトの名無しさん [2006/08/02(水) 01:30:29 ]
Visual C++で、WebBrowserコントロールを使ってブラウザのようなアプリケーションを作成しています。

作成しようとしているものは、既存のクリック募金のサイトにアクセスして、クリック回数や募金の金額を管理してくれる簡単なアプリです。

対象とするサイトは以下のようなサイトです。

ttp://www.kirin.co.jp/active/env/mizunomegumi/click.html
ttp://clickbokin.ekokoro.jp/belmo.html
ttp://www.thehungersite.com/cgi-bin/WebObjects/CTDSites

クリック時に、WebBrowserコントロールのOnBeforeNavigate2()が呼ばれるサイト
では、OnBeforeNavigate2()でフックする方法が使えると思います。
ただ、一番上のキリンのサイトのようにFlashで書かれたサイトでは、クリック時に
OnBeforeNavigate2()が呼び出されないようで、クリックを検出する方法を
どのようにしたら良いかと悩んでします。

なんか、良いアイディアあるでしょうか?
WebBrowserも、HTMLも、Visual C++も、Flashも詳しくないのでどこからてを付けてよいか困っています。
よろしくお願いします。



115 名前:デフォルトの名無しさん mailto:sage [2006/08/02(水) 17:26:00 ]
自分がクリック(に相当する操作)した回数を数えるんだろ?

116 名前:デフォルトの名無しさん mailto:sage [2006/08/03(木) 00:32:09 ]
>114
NavigateComplete2イベントなんてどうでしょう?

以下のサイトにDWebBrowserEvents2のイベント説明が載ってるのでいろいろ試してみては?
msdn.microsoft.com/library/default.asp?url=/workshop/browser/webbrowser/reference/ifaces/dwebbrowserevents2/dwebbrowserevents2.asp

117 名前:114 [2006/08/04(金) 00:53:49 ]
> 116さん

詳しい説明ありがとうございました。
NavigateComplete2も試してみたんですが、クリックした際に呼ばれないようです。

まだ、理解できていないですが、以下の方法で少しチャレンジしてみようと思います。

相談にのっていただいてありがとうございました。

1)Ethrealでパケットキャプチャして調べたところ、通信をしているのでWebBrowserコントロールで
通信しているパケットを取得して判断。

2)下の方法でクリックのイベントが取れるそうなので、そこからがんばる。

support.microsoft.com/kb/246247/


118 名前:デフォルトの名無しさん mailto:sage [2006/08/04(金) 17:43:06 ]
指定したリンクが未読か既読か区別する方法ってありますか?
IHTMLAnchorElementではそのようなメソッドがないようです。。。

119 名前:デフォルトの名無しさん mailto:sage [2006/08/04(金) 21:08:39 ]
>>118
IUrlHistoryStg::QueryUrl

120 名前:デフォルトの名無しさん [2006/08/10(木) 11:11:27 ]
BCC(無料)でIEコンポーネントを使いたいのですが
どこか参考になるサイト等はありますか?

121 名前:デフォルトの名無しさん [2006/08/10(木) 13:29:45 ]
教えない><

122 名前:デフォルトの名無しさん [2006/08/10(木) 16:24:39 ]
マジレス
BCCでは使えない
VC++にしなさい

123 名前:デフォルトの名無しさん [2006/08/10(木) 16:43:24 ]
無理



124 名前:デフォルトの名無しさん mailto:sage [2006/08/10(木) 17:41:48 ]
Visual C++ 2005 Express Edition は?

125 名前:デフォルトの名無しさん [2006/08/11(金) 10:11:58 ]
BCCでは無理なようですね
ありがとうございました

126 名前:デフォルトの名無しさん mailto:sage [2006/08/11(金) 10:15:09 ]
>>125
たぶんこの方法ならできると思う。VC++固有の機能は使っていないはず。
www.adp-gmbh.ch/win/misc/mshtml/HTMLWindow.html
ATLのDLLを用意できるのなら、このページの方法が使える。
ただしCComPtr/CComQIPtrなどを使わないように改造する必要があるだろうが。
www.nitoyon.com/vc/tips/ie_component.htm

127 名前:デフォルトの名無しさん mailto:sage [2006/08/12(土) 11:58:06 ]
>>126
すごいね。この上のHP。mingwでもできるようだ。BCCでもできるっしょ。
www.adp-gmbh.ch/win/misc/mshtml/MSHTMLTest.zip

128 名前:デフォルトの名無しさん mailto:sage [2006/08/20(日) 19:17:37 ]
ページを更新した(更新ボタンを押す or F5を押す)
というイベントはどう拾えばよいのでしょう?

129 名前:デフォルトの名無しさん [2006/08/21(月) 00:17:13 ]
IEツールバーの製作もここですか?

ツールバー上の特定のボタンを押すとポップアップメニューが出てくるように
プログラムしたのですが、IEを複数起動した場合、2つ目以降では
メニューが出てきません。他にも、IEを複数起動した場合、不安定に
なることが多いです。これって何が原因でしょうか。

IEを複数起動すると、ツールバーも複数存在するわけですが
OSの内部ではどうやって各ツールバーを扱っているのでしょうか。

130 名前:デフォルトの名無しさん mailto:sage [2006/08/21(月) 00:35:46 ]
>>128
更新ボタンって自分で作ってないの?
F5はキー拾えばいいんじゃね?

>>129
>IEを複数起動すると、ツールバーも複数存在するわけですが
>OSの内部ではどうやって各ツールバーを扱っているのでしょうか。

IEが別プロセスならツールバー間も無関係なはず
別プロセスでも共有しちゃってるような何かリソースがあるんじゃないの
設定ファイルとかレジストリの状態とか

131 名前:128 mailto:sage [2006/08/21(月) 00:45:50 ]
>>130
説明不足でした。
自分でIEコンポのインスタンス生成してるんじゃなくBHOをやってます。
なのでInternetExplorerで更新されたことが知りたいんです。
更新だとBeforeNavigateはこないです。

132 名前:デフォルトの名無しさん mailto:sage [2006/08/21(月) 02:11:02 ]
>>131
BHOってのがなんだか知らんが、
DownloadBeginかDownloadCompleteだったら、
location.reload()とかで更新されるたびに毎回通知がきたよ。

133 名前:デフォルトの名無しさん mailto:sage [2006/08/21(月) 18:43:50 ]
>>129
複数のスレッドから呼ばれてもきちんと動作するように作る。



134 名前:デフォルトの名無しさん mailto:sage [2006/08/23(水) 01:59:13 ]
ねーねー、おまいら IE6 と IE7 の違いはどう吸収すんの?

135 名前:七資産 mailto:sage [2006/08/23(水) 02:50:30 ]
気合

136 名前:デフォルトの名無しさん mailto:sage [2006/08/23(水) 02:53:57 ]
今のところ、Navigateに空文字渡すとエラーが出るようになったくらいしか
IE7と6の違いには遭遇してないけど、他にもいろいろあるんだろうな。

137 名前:デフォルトの名無しさん mailto:sage [2006/08/23(水) 07:34:41 ]
多段タブにできないものかな。

138 名前:デフォルトの名無しさん mailto:sage [2006/08/23(水) 10:42:28 ]
>>135
第二次世界大戦はそれで惨敗した。

139 名前:デフォルトの名無しさん mailto:sage [2006/08/23(水) 12:18:31 ]
戦後の復興も気合いだということを忘れなく。

140 名前:デフォルトの名無しさん mailto:sage [2006/08/23(水) 15:24:43 ]
>>139
気合はもちろん必要だが、気合だけでは無理、ということをお忘れなく。

141 名前:139 mailto:sage [2006/08/23(水) 23:32:10 ]
プログラムは気合いと才能。

142 名前:七資産 mailto:sage [2006/08/24(木) 03:40:09 ]
そして徹夜

143 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 13:24:33 ]
閃き、発想・・・まぁ才能の一部だなぁ



144 名前:139 mailto:sage [2006/08/24(木) 14:43:03 ]
昼寝して目覚める数分前の夢の中に半分いる状態で、
悩んでいるロジックについて考えると答えが出たりする。
この閃きは、神から授かった才能。

145 名前:デフォルトの名無しさん mailto:sage [2006/08/24(木) 14:49:07 ]
はいよかったね。
でもここはここはIEコンポーネントを使い倒すスレだよ。

146 名前:デフォルトの名無しさん mailto:sage [2006/08/27(日) 19:01:35 ]
IDispatchは大体理解したのですが、IDispatchExっていうのはなんなんですか?なんなの?なんなのよー!?
マイクロコロヌ

>>144
それは、うまく右脳を使える時間帯だな。ハイヤーセルフ(高次元の自分)と呼ばれる奴だ。
今、悩んでいる出来事を書いたメモを枕元において寝るとハイヤーセルフが寝ている間に解決してくれるという。
経営者とかが良くやる手法だとか。人間誰しも持ってる能力だ。

独学で使いこなしているのであれば、なかなか評価できるが。

147 名前:デフォルトの名無しさん mailto:sage [2006/08/28(月) 08:27:51 ]
IEコンポを生成したスレッドとは別のスレッドから、
IHTMLDocument2::write呼び出したら、まずいかな?
Mutexはったら大丈夫かな?

148 名前:デフォルトの名無しさん mailto:sage [2006/08/28(月) 09:02:21 ]
pc8.2ch.net/test/read.cgi/tech/1137771139/102
とかかも

149 名前:147 mailto:sage [2006/08/28(月) 11:53:33 ]
つーか実際に呼んだら死んだよ・・・
む〜今までおぼろげな理解で済ませてきたが、
Apartmentとかも勉強せねばならんな。
確かに、そっちのスレッドのがよさげ。

150 名前:デフォルトの名無しさん [2006/09/09(土) 18:32:57 ]
上の方で誰か質問してたけど
結局Reloadを検知するのってどうやんの? 生IEなんだけど。

BeforeNavigate2 はFireされないし
wm_commandだとメニューやF5は取れるけど、
更新ボタン押されても分からないよママン


151 名前:デフォルトの名無しさん mailto:sage [2006/09/09(土) 21:16:01 ]
安全な方法では無理


152 名前:デフォルトの名無しさん [2006/09/10(日) 11:52:41 ]
既成のタブブラウザがあるのですが、
これのaxwebbrowserのプロパティを外からいじる方法ってあるんでしょうか?



153 名前:デフォルトの名無しさん mailto:sage [2006/09/16(土) 09:36:17 ]
誰か答えてやれよ



154 名前:デフォルトの名無しさん mailto:sage [2006/09/16(土) 09:43:59 ]
漏れの男汁を飲み干したら答えてやろう。


155 名前:デフォルトの名無しさん mailto:sage [2006/09/16(土) 10:03:02 ]
>>152
タブブラウザの実装による。
COMのインタフェースとして取得できるなら望みはあるけど。
普通はそこまでしてないだろうな。

156 名前:デフォルトの名無しさん mailto:sage [2006/09/16(土) 16:41:08 ]
タブブラウザ側でAPIぐらい用意してるだろ普通。


157 名前:デフォルトの名無しさん mailto:sage [2006/09/16(土) 17:57:00 ]
janeのソース見る限り、外から使える仕組みになってるようには見えないぞw

158 名前:デフォルトの名無しさん mailto:sage [2006/09/17(日) 02:46:28 ]
どこのJaneがタブブラウザかと

159 名前:デフォルトの名無しさん mailto:sage [2006/09/17(日) 13:59:17 ]
すまん。間違えた。ぷにるはSDK公開されたら取得できるかもね

160 名前:128 mailto:sage [2006/09/21(木) 00:37:35 ]
>>150
なんか別件で調べてたら偶然みつけた
VK_BROWSER_REFRESH
とかいうvirtual keyがあるらしい。XP/2000のみ有効らしいが。

161 名前:152 mailto:sage [2006/09/23(土) 23:02:35 ]
レスありがとうございます。
とてもマイナーな洋物タブブラウザなので無理そうですね…
スクリプトエラーの警告がうざすぎるので消したかったのですが諦めます。

162 名前:デフォルトの名無しさん mailto:sage [2006/10/29(日) 18:23:48 ]
IEコンポから呼ばれるイベントは、プログラムのメインスレッドとは違い
IEコンポが自分で作ったスレッド上で実行されるんですよね?
なのでそのイベント上ではメインスレッドと処理がぶつからないようにすべきなんでしょうか?

163 名前:デフォルトの名無しさん mailto:sage [2006/10/29(日) 18:41:04 ]
IEの設定でJavaScriptをOFFにしても、自作プログラムに貼り付けたら普通にJavaScriptが実行された……



164 名前:デフォルトの名無しさん mailto:sage [2006/10/29(日) 19:47:13 ]
>>163
自作プログラムの中は舞いコンピュータゾーン扱いされるのでは?
俺の想像だが。

165 名前:デフォルトの名無しさん mailto:sage [2006/10/29(日) 20:12:04 ]
なんかのインターフェースで制限つきサイト扱いにできるよ。
OEが使ってるのもそれ

166 名前:デフォルトの名無しさん mailto:sage [2006/11/22(水) 17:06:05 ]
IE7ベータのときに日本語を含んだURLのInternetOpenUrlが

A版 NG
W版 OK

だったのが、

A版 OK
W版 NG

に変わってる(IE6ではどっちもOKだった)

MSがもはや何をしたいのか分らん。A版戻したってことは
日本語URL何が何でも排除って方針でもないようだが…。

もう自分で変換することにしたよ(´・ω・`)


167 名前:デフォルトの名無しさん mailto:sage [2006/11/22(水) 17:07:07 ]
A版 OK
W版 NG
ってのは正式版ではってこと

168 名前:デフォルトの名無しさん mailto:sage [2006/11/24(金) 13:30:42 ]
>>116
LPWSTR で非 ASCII 文字を含む URL を渡したとき、どういう動作をしてほしいの?
UTF-8でエンコードしてURLEscape?
漏れには何を持って「OK」「NG」とするのかもわからない。

169 名前:デフォルトの名無しさん mailto:sage [2006/11/25(土) 10:31:20 ]
>>168
166だけど俺に対して書いたんだよね。

>漏れには何を持って「OK」「NG」とするのかもわからない。
内部動作的な詳細は知らないが、IE6状態で動いてたものが
IE7を入れると動作が変わるのがNG。

>UTF-8でエンコードして
たぶんこれでOKなんだろうが、上に書いたとおりInternetOpenUrl
の内部動作の実際は知らないので、「互換性を保ってくれ」というの
が要望。

非 ASCII 文字を含む URLを使うなという話もあるかもしれないが、
プログラムのユーザーが何を入れるかは分らないからどうしようも
ない。

170 名前:デフォルトの名無しさん mailto:sage [2006/11/25(土) 14:55:35 ]
> に変わってる(IE6ではどっちもOKだった)
IE6の動作が基準だったらこれはトートロジーで書く意味ないじゃん。
IE6がバグっててIE7でバグが修正されただけかもしれないのに。
どうせバグでもいいから動作変えるなと言うんだろうけど
まあIEコンポはSide-by-Sideでないから一理はあるな

171 名前:デフォルトの名無しさん mailto:sage [2006/11/25(土) 15:57:46 ]
>IE7でバグが修正されただけかも

A版とW版って文字コード以外動作同じだと思ってたんだけど
そうじゃない場合もあるのか?

文字コードの変換(A←→W)はAPI使ってる。

IE7で『バグが修正されて』どっちも駄目になるなら
まだ整合性も有るように感じるけどね。

>> に変わってる(IE6ではどっちもOKだった)
>IE6の動作が基準だったらこれはトートロジーで書く意味ないじゃん。
そう? 166を書いた段階での参考情報として付加したまで。


172 名前:デフォルトの名無しさん mailto:sage [2006/11/25(土) 16:54:53 ]
案外、インターネットオプションの「常にURLをUTF-8で送信する」がオフになっているだけというオチはない?

173 名前:デフォルトの名無しさん mailto:sage [2006/11/25(土) 18:25:22 ]
>>172
>URLをUTF-8で送信
言われて、それらしきオプション、ONOFFどちらも試してみた。
けど変わらなかった。そういう問題でも無いみたい。

A版ならチェックがOFFでも日本語URL開ける。



174 名前:デフォルトの名無しさん mailto:sage [2006/12/05(火) 14:43:35 ]
VB2005ではMSChartってインストールされないんでしょうか?

もしそうなら、代わりの機能とかどうにかしてMSChartを使うこととかできませんか?


175 名前:174 mailto:sage [2006/12/05(火) 19:15:17 ]
VB.NETスレと間違えました。
向こうで質問しなおしてきます。

失礼しました。







[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<145KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef