用谁用过操作系统自带的DHTML Edit Control控件。(30分)

  • 主题发起人 主题发起人 lig
  • 开始时间 开始时间
L

lig

Unregistered / Unconfirmed
GUEST, unregistred user!
我的E-MAIL中需要有一个像OUTLOOK EXPRESS一样的写HTML信件的功能,
开始我就怀疑它是使用这个控件(IE安装时自带的ActiveX控件)来完成
的,后来将导入控件装上一看果然如此。初用了一下感觉相当的爽(好
像frontpage也是使用该控件做为所见即所得编辑网页功能的内核),只
是有两个问题一时间我还无法解决,所以想请教请教在我之前对其有过
体验的前辈高人。
1.使用了这个控件之后,程序的启动速度明显变慢,而同样的功能在VB
上实现就无此现象。是否是因为某些属性设置得不对所造成的。
2.如果对其进行编辑后,不进行保存,那么在程序运行结束时,会出现
ActiveX控件的访问错误。请问除了全程拦截ActiveX控件错误以外,还
有没有其它的方法来解决此问题。
分不多了,所以只能给30分。
 
我在C++Builder里还用不了这个东东呢呢!!!连compile都过不去,
谁能解释一下为什么????
 
to Hunj:
肯定好用的,把编译出现的错误贴出来看一看,估计可能是BCB安装
的是使用DELPHI导入的组件源文件(DEPLHI的一些语法BCB的DELPHI编译
器是不支持的),或是组件安装成功,但是包含组件的应用程序在编译
时并没有指定组件的路径。
 
to lig:
我遇到的情况与你相似,用了DHTMLEDIT控件后BCB的编译速度极快慢(我的CPU Celron 500, RAM 128M);
退出程序后,出现以下程序非法错误:a. 在 0167:40032e63 的模块VCL50.BPL 中导致无效页错误。b. 在 0167:bff7679f 的模块 KERNEL32.DLL 中导致无效页错误。
另外,我想实现类似frontpage的功能,如何进行DHTMLEDIT接口的调用,比如:我要获得网页上有关对象的属性并对有关属性进行修改(如换掉图片),应如何实现;这个控件是不是将鼠标的右键给屏蔽掉了,如我将一个popmenu与之相关联,按右键根本反应;若你知道方法请告诉我,同时也请各位大虾帮帮忙,小的在这里谢过了(到时有分送哦);请mailto:yuebao@china.com。
to Hunj:
我最开始也出现了你这样的问题,当时提示我内存不够,天!,我的内存是128M啊,后来心犹不甘,重新试过几次后,用如下方法总算把它装上去了。首先关闭所有的应用程序,打开BCB5,生成一个安装包并保存;第二步关闭BCB5接着打开它;第三步,compile and install 刚才的包,就Ok了。不过用这个控件时,速度特别慢。
 
不好意思,没经验没注意到换行,造成大家阅读不便,敬请各位大侠原谅则个。
 
请问错在哪?
//--------------------------------------------------------------------
void __fastcall TForm1::LoadHtmlFile(AnsiString URLStr)
{
wchar_t *URLwchar_t;

URLwchar_t=new wchar_t;
URLStr.WideChar(URLwchar_t,URLStr.Length());
DHTMLEdit1->LoadURL(URLwchar_t);
DHTMLEdit1->BaseURL=ExtractFilePath(URLStr);
delete URLwchar_t;
}
//--------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
wchar_t *URLwchar_t;
AnsiString URLStr;

if (OpenDialog1->Execute())
{
DHTMLEdit1->BrowseMode=false;
URLStr=OpenDialog1->FileName;
LoadHtmlFile(URLStr);
}
}

上面的问题是能正常调进htm文件,但关闭窗体后出现程序非法错误,提示如下:
a. 在 0167:40032e63 的模块VCL50.BPL 中导致无效页错误。
b. 在 0167:bff7679f 的模块 KERNEL32.DLL 中导致无效页错误。

但这样写没错误:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
OleVariant PathIn;
if (OpenDialog1->Execute())
{
DocComplete=false;
PathIn=OpenDialog1->FileName;
DHTMLEdit1->LoadDocument(PathIn);
}
}

请各位大侠帮忙解释一下。

还有两个问题是:
问题1:
OleVariant a;
a="";
编译时出错:
而这样写
OleVariant a;
AnsiString b;
b="";
a=b;
编译通过。
问题2:
OleVariant a;
a=false;
编译出错。
 
我遇到过,退出时出错的现象。
好象是Delphi对他的管理有问题,
可以把使用该控件的form放在所有
自动创建form的第二个创建就没有
问题了。
 
怎么没人来看看?
 
在主窗口的close事件中执行如下语句:
Exitprocess(0);
 
这个东东怎么用?
 
附加功能 将问题提前
 
接受答案了.
 
后退
顶部