研究过COM+的高手请进来,HResult返回值...(没有人理我!)请帮..帮..帮帮忙 (100分)

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

liucanqiu

Unregistered / Unconfirmed
GUEST, unregistred user!
各位大侠见笑:
我学习Delphi时间不长,由于需要还必须搞COM+,有些粗浅的问题请教
1、Delphi中怎么处理HResult的错误机制,怎样获取COM+中自身的HResult错误返回值
(50分)..详细
2、COM+怎样调试组件?书中介绍的没有调试通。
我没有开发COM+的经验,思路可能有问题。中间层又分好几层(客户端-FO-EO-DO-数据库),
这样处理许多delphi的优势(Midas)没利用上,请各位高手指点,因为初次登贵网,只有200
积分,见谅!
 
分布式COM+对象设计求解 :
http://www.delphibbs.com/delphibbs/dispq.asp?lid=845591
如何调试MTS/COM+组件?
http://www.delphibbs.com/delphibbs/dispq.asp?lid=850738
 
对于“怎么处理HResult的错误”
在中间层中发生错误而要提醒客户程序时,可用Raise Exception.Create('error message');
去列举异常,这样客户程序就会出现一个错误提示框了。
而不会用showmessage('some error')这样的做法,否则客户程序将停住,
起到timeout或手工在程序服务器那台电脑上的消息框按下这个OK键
 
DEMO:
http://delphi.mychangshu.com/dispdoc.asp?id=536
 
TO yhaochuan:
在中间层中发生错误而要提醒客户程序时,不想直接用Raise Exception.Create('error message');提示;
我想做一个错误处理方案,错误提示信息、业务信息由我控制显示。
在COM+体系中用于传递错误信息的基本手段是返回值HRESULT. HRESULT是由严重出错位、功能和错误代码等
组成的32位长的整数。可以在HRESULT中定义自己的错误代码,微软已经定义了HRESULT中大部分的值(Windows.pas文件)。
可以使用某些COM接口来传送扩展错误信息。ATL为这些接口提供了支持从而使得这些接口更易使用,但我对怎样定义这些
接口(IErrorInfo、ISupportErrorInfo、ICreateErrorInfo等)、怎样使用不清楚?另外COM+是怎样捕获这些错误信息的?
我想把HResult错误返回值和业务信息统一在一起,形成一种我自定义的ErrorCode,在客户端统一处理。
在Delphi中有相应的函数 HResultCode()把HRESULT转换成int,在用函数 SysErrorMessage() 显示信息,问题是在客户端
怎样得到COM中微软已经定义过的HRESULT返回值?
麻烦大侠帮我思考一下,本人上网不是很方便,见谅,接受后积分送上,请帮..帮..帮帮忙
 
接受答案了.
 
后退
顶部