我想做一个能将RTF码转换成正常文字的 组件Public rtbox As RichTextLib.RichTextBox
Public Function rtftxt(req) As Variant
rtftxt = rtbox.TextRTF = req
End Function这是我在Activex DLL 里写的一段代码
可是生成DLL 注册好了 用ASP 连接这个组件 应用的时候出现问题ASP:
set rtf = server.createobject("rtf.rtftext")
response.Write(rtf.rtftxt("aaa")) 提示我 “为设置对象变量 或with block 变量”我那里做错了 之前没开发过组件 也不太会VB请高手门指点一下 如何能做出一个能将RTF编码转换成正常文字的组件
Public Function rtftxt(req) As Variant
rtftxt = rtbox.TextRTF = req
End Function这是我在Activex DLL 里写的一段代码
可是生成DLL 注册好了 用ASP 连接这个组件 应用的时候出现问题ASP:
set rtf = server.createobject("rtf.rtftext")
response.Write(rtf.rtftxt("aaa")) 提示我 “为设置对象变量 或with block 变量”我那里做错了 之前没开发过组件 也不太会VB请高手门指点一下 如何能做出一个能将RTF编码转换成正常文字的组件
但是RTBOX在你的组件里是控件来使用的.你虽然定义了它,但是实际上并不存在.
我的一个比较笨的办法在你的DLL里加一个FORM1,在FORM上加一个RTBOX.无需代码.
这样,在类模块里就可以使用RTBOX了.
with form1.rtbox
....
end with
再编译成DLL文件,再注册,再在ASP里调用.
这样应该能解决问题.因为我前几天也碰到这个问题,是这样解决的.
不知道有没有其他高手可以有更好的办法解决.
你在createobject("rtf.rtftext") 之后可以加个判断,看看rtf is nothing ?
你在CLASS1里调用的时候,只需要 "窗体名.控件名.属性",这样就可以用了.