ArcGIS “Error HRESULT E_FAIL has been returned from a call to a COM component.” 異常的解決


錯誤提示內容:

{System.Runtime.InteropServices.COMException (0x80004005): Error HRESULT E_FAIL has been returned from a call to a COM component.
   at ESRI.ArcGIS.Display.AlgorithmicColorRampClass.CreateRamp(Boolean& ok) ...


 寫了一個簡單的函數:

public IColorRamp CreateColorRamp(IColor fromColor, IColor toColor, int count)
{
  IAlgorithmicColorRamp pRampColor;
  bool ok = true;

  pRampColor = new AlgorithmicColorRampClass();
  pRampColor.FromColor = fromColor;
  pRampColor.ToColor = toColor;
    // ... missing size sentence 
  pRampColor.CreateRamp(out ok);

  return pRampColor as IColorRamp;
}

 

后來仔細檢查代碼,發現在以上黃色語句處少了pRampColor.Size = count;這句話,導致創建彩色條帶的失敗。但是僅僅給出“Error HRESULT E_FAIL has been returned from a call to a COM component.”這樣的錯誤,我對ArcGIS的異常提示也是醉了,鬼知道這是什么錯誤。所以說在不考慮ArcGIS那幾處優秀的設計地方外,可以說ArcGIS這個系統軟件做的十分爛。

備注一下,省的以后再被ArcGIS這樣的錯誤弄的一頭霧水。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM