Dhtml的应用问题!aiirii请进!
我的Dhtml总是提示,不支持此接口.!!!
MailDhtml.DocumentHTML:='<html><body></body></html>';
self.MailDhtml.DocumentHTML :='HtmlBuffer.htm'
都不行.你有Dhtml的例子吗发给我一个lsllsf@tom.com最好是delphi 2005的.
问题点数:100、回复次数:12Top
1 楼jiangsheng(蒋晟.Net[MVP])回复于 2005-12-04 00:14:35 得分 10
http://msdn.microsoft.com/archive/en-us/dnaredcom/html/edcomfaq.aspTop
2 楼lsllyy()回复于 2005-12-04 16:38:23 得分 0
解决不了.有没有别的办法了.
Top
3 楼ly_liuyang(Liu Yang LYSoft http://lysoft.7u7.net)回复于 2005-12-05 10:35:47 得分 0
嘿嘿
知道这个问题原因所在的人并不多的~_~
任何机器只要安装MS的补丁KB891781后,DHTML就动不了的!
现在的XPSP2,2003SP1等都内含那个补丁,所以DOM接口用不了的
没有办法了么??
有的,呵呵
首先,保存Delphi系统下的OleCtrls.Pas到你的程序所在目录
然后修改部分代码,增加IOleContainer接口
TOleControl = class(TWinControl, IUnknown, IOleClientSite,
IOleControlSite, IOleInPlaceSite, IOleInPlaceFrame, IDispatch,
IPropertyNotifySink, ISimpleFrameSite, IOleContainer)
//IOleContainer
function EnumObjects(grfFlags: Longint; out Enum: IEnumUnknown):
HResult; stdcall;
function LockContainer(fLock: BOOL): HResult; stdcall;
function ParseDisplayName(const bc: IBindCtx; pszDisplayName:
POleStr; out chEaten: Longint; out mkOut: IMoniker): HResult; stdcall;
function TOleControl.EnumObjects(grfFlags: Integer;
out Enum: IEnumUnknown): HResult;
begin
Result := E_NOTIMPL;
end;
function TOleControl.LockContainer(fLock: BOOL): HResult;
begin
Result := E_NOTIMPL;
end;
function TOleControl.ParseDisplayName(const bc: IBindCtx;
pszDisplayName: POleStr; out chEaten: Integer;
out mkOut: IMoniker): HResult;
begin
Result := E_NOTIMPL;
end;
并修改
function TOleControl.GetContainer(out container: IOleContainer):
HResult;
begin
container:= Self;
Result:= S_OK;
end;
做完以上修改后,DHTML就又能使用的:)Top
4 楼aiirii(ari-http://spaces.msn.com/members/aiirii/)回复于 2005-12-05 11:06:57 得分 10
这个问题我不懂啊, 不过, Liuliu给出答案了Top
5 楼lsllyy()回复于 2005-12-05 11:14:25 得分 0
不行呀.我试过这个了.报的错更多了.Top
6 楼lsllyy()回复于 2005-12-05 11:49:51 得分 0
[Fatal Error] mdi_main.pas(8): F2051 Unit SHDocVw was compiled with a different version of OleCtrls.TOleControlTop
7 楼ly_liuyang(Liu Yang LYSoft http://lysoft.7u7.net)回复于 2005-12-05 12:03:29 得分 80
就不会把Delphi自己的SHDocVw.Pas都复制到项目文件夹下
然后编译的吗?
我用得好好的,呵呵
如果你不想自己弄,直接下载http://lysoft.lz169.com/LYSoft/DHTML.rar
Top
8 楼lsllyy()回复于 2005-12-05 12:04:33 得分 0
搞定了.哈俣哈.Top
9 楼lsllyy()回复于 2005-12-05 12:28:35 得分 0
那个mshtml作什么的.告诉我我要给分了.Top
10 楼lsllyy()回复于 2005-12-05 12:33:35 得分 0
你QQ多少.我加你.还有aiirii你的QQ多少我作一个群4909956进来哈哈.加进来.Top
11 楼ly_liuyang(Liu Yang LYSoft http://lysoft.7u7.net)回复于 2005-12-05 16:38:01 得分 0
MSHTML就是IE的一个扩展类型库
Type Library嘛,呵呵Top
12 楼lsllyy()回复于 2005-12-05 17:21:33 得分 0
还是不明白是作什么用的.我菜在讲讲.我不用他也可以呀.
给我这个菜鸟讲讲.Top




