[qqface3]发现 Dx 系例组件大家可能用的很普遍了其中最新版本中有个cxProgressBar控件目前发现 这个控件与  这句使用COM中常用的代码有“冲突”
ActiveX.CoInitialize(nil);
使COM对像不能正确初始化大家有环境可以测试一下function Init(): HRESULT;
begin
  Result := S_OK;
  if not assigned(SchedulingAgent) then
  begin
    Result := ActiveX.CoInitialize(nil);
    if Result <> S_OK then
    begin
      ActiveX.CoUninitialize;
      ShowMessage('Error');
      Application.Terminate;
    end
    else begin
      ShowMessage('ok');
    end;
  end;
end;

解决方案 »

  1.   

    [qqface67]
    人心散了,队伍不好带
    -------------------------------------
    ...此帖用 CSDN's forum Explorer 回地
    还有要升职了 哇哈哈哈高兴呀!!
    CSDN论坛浏览器:http://CoolSlob.ys168.com/
      

  2.   

    CoInitialize是应该允许重复调用的,
        if Result <> S_OK then //这样判断就当它错是不妥当的.
        begin
    .........
          ShowMessage('Error');
        end
      

  3.   

    放与不放那个bar控件,if Result <> S_OK then 这句确实有不同的走向
      

  4.   

    CoInitialize 通常返回值为S_OK = 0  或者 S_FALSE =1 都可以视为成功调用...
      

  5.   

    放了那个BAR控件,估计它是调用过一次CoInitialize
      

  6.   

    S_OK = 0  或者 S_FALSE =1 都可以视为成功调用...-_-||| 原来是这样[qqface3]
    -------------------------------------
    ...此帖用 CSDN's forum Explorer 回地
    还有要升职了 哇哈哈哈高兴呀!!
    CSDN论坛浏览器:http://CoolSlob.ys168.com/
      

  7.   

    95也可以用Succeeded函数来作返回值判断..
    function Succeeded(Res: HResult): Boolean;
    begin
      Result := Res and $80000000 = 0;
    end;
      

  8.   

    S_OK = 0  或者 S_FALSE =1 都可以视为成功调用...-_-||| 原来是这样[qqface3]
    -------------------------------------
    ...此帖用 CSDN's forum Explorer 回地
    还有要升职了 哇哈哈哈高兴呀!!
    CSDN论坛浏览器:http://CoolSlob.ys168.com/
      

  9.   

    [qqface27]没分的贴,考虑是不是强行把他给贴了~~~~~~~~~
      

  10.   

    3k哈欠,DS~~ 我自己来 -_-||凸