在 C++ Builder 中使用 TEmbeddedWB

Using TEmbeddedWB in C++ Builder

我在使用 TEmbeddedWB 为来自 https://github.com/7even11/Delphi-EmbeddedWB

的 RAD Studio Rio 10.3.3 编译测试应用程序时遇到了一些困难

我只是将 EmbeddedWB 组件拖放到窗体上并进行编译。它在 Delphi 中编译得很好。在 C++ Builder 中出现错误:

[bcc32c 错误] EWB.IEConst.hpp(101): 预期的不合格 ID

EWB.IEConst.hpp 文件中,这发生在以下行中:

static const System::Int8 BINDSTATUS_SERVER_MIMETYPEAVAILABLE = System::Int8(0x36);
static const System::Int8 BINDSTATUS_SNIFFED_CLASSIDAVAILABLE = System::Int8(0x37);
static const System::Int8 BINDSTATUS_64BIT_PROGRESS = System::Int8(0x38);
#define VER_NUM L" 14.70.0"
extern DELPHI_PACKAGE System::UnicodeString _MaskedChars;
static const int ADDRESS_NOT_VALID = int(0x7ffbfe1c);
#define ASS_MESS L"Please assign a WebBrowser before using this feature."
static const System::Int8 CACHEGROUP_ATTRIBUTE_BASIC = System::Int8(0x1);

错误在最后一行 (CACHEGROUP_ATTRIBUTE_BASIC)。我看不出上面为什么会触发错误,因为上面还有一堆 static const System::Int8 并且它们可以编译。

知道这里的问题是什么吗?

正如@RemyLebeau 所指出的那样,在 WinInet.h 和其他 headers 中与先前定义的常量存在冲突。我已经更新了 https://github.com/7even11/Delphi-EmbeddedWB 上的更改,以使 C++ Builder 程序员更容易编译和使用该组件。