Saturday, May 2, 2015

[C++ Builder XE6] Error! Import Bentley Microstation (V8) Type Library (E2347)



[bcc32 Error] MicroStationDGN_OCX.h(2159): E2347 Parameter mismatch in write access specifier of property Vertex
 
-------------------------------------------

[MicroStationDGN_OCX.h]

void __fastcall set_Vertex(int Index/*[in]*/,  Microstationdgn_tlb::Point3d* pVal/*[in,out]*/);

__property Microstationdgn_tlb::Point3d Vertex[int Index]={ read=get_Vertex, write=set_Vertex };


[MicroStationDGN_OCX.cpp]

void __fastcall TEllipseElement::set_Vertex(int Index/*[in]*/,
Microstationdgn_tlb::Point3d* pVal/*[in,out]*/)
{
  GetDefaultInterface()->set_Vertex(Index/*[in]*/, pVal/*[in,out]*/);
}


---------------------------------------  Solution  -----------------------------------------------------------------

[MicroStationDGN_OCX.h]

void __fastcall set_Vertex(int Index/*[in]*/,  Microstationdgn_tlb::Point3d& pVal/*[in,out]*/);



[MicroStationDGN_OCX.cpp]

void __fastcall TEllipseElement::set_Vertex(int Index/*[in]*/,
Microstationdgn_tlb::Point3d& pVal/*[in,out]*/)
{
  GetDefaultInterface()->set_Vertex(Index/*[in]*/, &pVal/*[in,out]*/);
}


---------------------- Explain  ----
Parameter type of set_ function should be the same as the type of the Property.






1 comment:

  1. Today, Bentley Motors are as yet a preeminent extravagance vehicle marque and speak to high caliber in present day motoring. used car dealerships near me

    ReplyDelete

[Qt] 執行檔需要哪些 Dll?

 1. 使用 Qt  的 windeployqt.exe 工具 (在 C:\Qt\Qt5.14.1\5.14.1\msvc2017\bin\)。   a. 把執行檔 myProgram.exe 放在某個資料夾。   b. 在檔案總管這個資料夾按 Shift 和滑鼠右鍵,開啟 Po...