- ベストアンサー
VB6にて、インターネットエクスプローラを操作したいのですが。
おはようございます。できるかできないかもわからないのですが、 どうか教えて下さい。 仕事で、CADソフトを使用しております。そのCADソフトでは、 指示書をインターネットエクスプローラで表示します。 しかし、どうもうちの会社の見方と違うので、並べ替えをして再表示 させたいと考えてます。 そこで、VB6にて作成と思い、設計してみました。 僕は、たまぁに、VB6をお遊び程度で触る、ほぼ素人なんで、わかりにくいと思いますが、聞いてください。 1.ボタンを押すと、現在開いているインターネットエクスプローラがあれば、終了させる。 2.HTMLファイルの中身を並びかえる。 3.並び変えたHTMLをインターネットエクスプローラにて表示。 と考えております。 1と3の方法がわかりません。 できればサンプルコードを付けてもらえるとありがたいです。 どうぞ、よろしくお願い致します。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
ウインドウクローズのサンプルです。 Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" _ (ByVal hwnd As Long, ByVal wMsg As Long, _ ByVal wParam As Long, lParam As Any) As Long Private Const WM_CLOSE = &H10 ... Call SendMessage(hWnd, WM_CLOSE, 0, 0)
その他の回答 (4)
- todo36
- ベストアンサー率58% (728/1234)
> 行のソートを行いたいです。 Document Object Model(DOM)の世界ですね。 VB6で出来なくはないけど(MSHTML)、javascriptの方が簡単でサンプルが豊富です。 さっき知ったけど、ブラウザのブックマークに登録するスクリプトのことを「ブックマークレット」といい、 世界中のスクリプト職人が作品を発表しています。 テーブルを並び替えるブックマークレット(sort table) http://www.squarefree.com/bookmarklets/pagedata.html
お礼
VBが一番簡単だと聞いて、お遊びで始めたのですが、 かなりいろんな作業ができるのですねぇ。 びっくりしてます。 まだ、何を言ってるのか、意味もわからない状態なので、 勉強して、いろんなことに挑戦してみたいと思います。 今回はどうもありがとうございました。
- vbotoko
- ベストアンサー率0% (0/3)
WebControl と言うActiveXコントロールをリファレンスで参照して、フォームに貼りつけて使います。あとの動作はオブジェクトブラウザで適当なプロパティやメソッドの設定をするだけです。
- todo36
- ベストアンサー率58% (728/1234)
簡単な変換であれば、IEのスクリプトがいいでしょう。(JavascriptまたはVBS) サンプルw http://www.gdncom.jp/general/bbs/ShowPost.aspx?PostID=34608 のスクリプトをアドレスに入力 アイコンをリンクバーにドラッグ&ドロップ
お礼
スクリプトは全くわかりませんので、申し訳ありません<(_ _)> 変更は、行のソートを行いたいです。 製品名、納期、サイズ、などなどあるのですが、 製品名での昇順を行いたいと考えてます。 このサンプルは、面白かったです。 ステップアップした際には、真剣に取り組んでみようと思います。 ありがとうございました。
- umota
- ベストアンサー率46% (150/324)
API を使います。 1. プログラムが長くなるので、各キーワードを基に API を調べてください。 EnumWindows で各ウインドウハンドルを取得 (以下をループ ) GetWindowText でハンドルからウインドウタイトルを取得 ウインドウタイトルに "Microsoft Internet Explorer" が含まれていたら PostMessage または SendMessage でクローズします。 (タイトルが固定ならば FindWindowEx でも可能です ) 3. サンプルです。 Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _ (ByVal hwnd As Long, ByVal lpOperation As String, _ ByVal lpFile As String, ByVal lpParameters As String, _ ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long Private Const SW_SHOW = 5 . . . ShellExecute(0, "open", App.Path & "\hoge.htm", 0, 0, SW_SHOW) (hoge.htm は表示する HTML ファイルがアプリケーションと同じパスにある場合です)
補足
返事できなくて申し訳ありません。本業の間に試していました。 1に関してなのですが、ハンドル取得に成功しましたが、 クローズの方法がどうもわかりません。 取得した、名前にInternet~が含まれているものの選別まではできてました。それをクローズするコードがどうしてもわかりません。 お暇があれば、お助け願えればと思います。 お手数かけますが、よろしくお願い致します。
お礼
クローズできました! ありがとうございます。 このAPIの使い方、ちゃんとした意味がまだ理解できていないので、 ちょっと歯がゆいのですが、勉強してみます。 どうもありがとうございました。