ALTER TRIGGER message_Trigger1ON dbo.messageFOR INSERT /*, UPDATE, DELETE */AS       /* IF UPDATE (column_name) ...*/begin       declare @PhoneNum nvarchar(50)       declare @Content nvarchar(140)       declare @MessageId nvarchar(70)       declare @index int       declare @hr int       declare @object int       select @PhoneNum = phone_num, @Content = Content, @MessageId = message_id from inserted       select @index = 1       /*调用COM发送短信*/       begin              EXEC @hr = sp_OACreate '{26850DDA-862C-44FF-9232-282937F2CA4B}',@object OUT
              if @hr = 0              begin                     exec @hr=sp_OAMethod @object,'SendMsg',NULL,@Content,@PhoneNum,@index,@MessageId                     exec sp_OADestroy @object              end       endendend红色部分中sp_OACreate中的参数是怎么来的?它跟com组件怎么联系的?具体怎么用的,谢谢

解决方案 »

  1.   

    可不可以这样
    你先写个 exe,功能是调用COM发短信的
    然后用 EXEC 去执行这个 exe
      

  2.   

    {26850DDA-862C-44FF-9232-282937F2CA4B}是调用的com组件的CLSID,你通过注册表HKEY_CLASSES_ROOT\CLSID下可以查到,或者用vc带的工具:ole-com object viewer也可以浏览到
      

  3.   

    {26850DDA-862C-44FF-9232-282937F2CA4B} 多数是COM组建的ID,通过这个ID,可以创建对应的com组建对象,然后就可以调用它的接口方法等...你先了解一下这个COM的接口方法等