收录日期:2020/10/29 10:07:34 时间:2016/07/25 21:21:29 标签:Windows SDK/API
我有以下一段Dll代码,使用了一个WebBrowser控件,GetHandle为导出函数。
我在我的主程序里使用这个DLL的时候导致崩溃,请问各位前辈这是什么原因呢?
我应该如何做呢?我的目的是在dll中用一个webbrowser控件打开一个网站,然后
返回这个webbrowser控件的句柄,然后把这个控件设置成为主程序的子窗口。谢谢!
分数不多了,就还只有35分,我再开个号加一百分。

unit Unit1;

interface

uses Unit2,SHDocVw;
var
  h:LongWord;
  b:TWebBrowser;
function GetHandle():LongWord;stdcall;
implementation
function GetHandle():LongWord;stdcall;begin
    b.Navigate('http://www.google.com');
    h:=b.Handle;
    Result:=h;
end;
initialization
finalization
end.
你b都没创建立对象。
你也使用Navigate,取Handle
不崩溃才怪
如何创建呢?前辈可不可以给出个可运行的例子我看看呢?谢谢!
 b:TWebBrowser;
 
  b := TWebBrowser.create(nil);
  用完记得释放
   b.free;


unit Unit1;

interface

uses Unit2,SHDocVw;
var
  h:LongWord;
  b:TWebBrowser;
function GetHandle():LongWord;stdcall;
implementation
function GetHandle():LongWord;stdcall;
begin
    b:=TWebBrowser.create(nil);
    b.Navigate('http://www.google.com');
    h:=b.Handle;
    Result:=h;
end;
initialization
finalization
end.


引用 4 楼 cnsillycat 的回复:
Delphi(Pascal) code


unit Unit1;

interface

uses Unit2,SHDocVw;
var
  h:LongWord;
  b:TWebBrowser;
function GetHandle():LongWord;stdcall;
implementation
function GetHandle():LongWord;st……

按照前辈的方法的确没问题了,谢谢!
我在DLL工程写了如下代码,但我在主程序调用时写了如下代码:h:=GetHandle(Form1.Handle); webbrowser却没有显示在我主程序的form上,请问我当如何解决呢?谢谢!

unit Unit1;

interface

uses Unit2,SHDocVw;
var
  h:LongWord;
  b:TWebBrowser;
function GetHandle(hwnd:LongWord):LongWord;stdcall;
implementation
function GetHandle(hwnd:LongWord):LongWord;stdcall;begin

    b:=TWebBrowser.CreateParented(hwnd);
    b.Visible:=True;
    b.Height:=200;
    b.Width:=200;
    b.Top:=300;
    b.Left:=400;
    b.Navigate('http://www.google.com');
    Result:=h;
end;
initialization
finalization
    b.Free;
end.
谢谢!如下解决了:
    b:=TWebBrowser.Create(nil);
    b.Visible:=True;
    b.Height:=Height;
    b.Width:=Width;
    b.Top:=Top;
    b.Left:=Left;
    Windows.SetParent(b.Handle,hwnd);
    b.Navigate(URL);
    Result:=b.Handle;
都解决了呀,接分来了。

ARCSDE 8.3 for Oracle9i问题 有经验的兄弟麻烦推荐一个j2me适用的压缩算法。 我要实现的是当点击任意一栏目时.......... 如何制作一个保密文件夹? 求助:关于ULARGE_INTEGER的使用问题! 非法关机,程序数据存储问题 急!!!视图切换时使用CHtmlView,调用DestroyWindow()时出错,求救!! 有谁用过RemoteAdministrator 远程登陆软件? 高手帮一下忙,ole字段问题! 什么是回调,回调有什么实用性,谢谢,解释以下?? 求bmp文件格式类实现的代码。急急急急!!!!! 闲着无聊,找个单位实习一下! 小弟跪拜:一个小问题而已!(急) 帮我推荐几个网站?? 这个帖子无法结贴,等待ing,要分就去看看吧。 一个非常经典的Java程序(纯属娱乐不能编译) 问一个问题,.NET出现后,COM还有用吗?还需要学吗? 动态生成的ImageButton单击时出现的问题 IPcture图片显示问题 smartupload上传文件 如果磁盘已满 有提示么? 问题“ [Microsoft][ODBC SQL Server Driver][TCP/IP Sockets]一般性网络错误。请检查网络文档。” CAsyncSocket TCP协议通信速度慢的问题请教 小弟今天过生日,因身处异地,没有朋友陪,网上来散分!~~~ 天河软件园指哪一片? 高人指点一下偶拉,关于打包水晶报表的问题 我用archive作了个图形界面的exe文件关闭后窗口没了,程序还再后台运行? 关于防止恶意论坛发广告帖子的问题。请教~ 盗版Windows 2003如何打SP1补丁?? 急,真样判断用户是否是初次登陆界面? 关于GROUPBAR组件的问题