【发布时间】:2019-12-22 22:24:14
【问题描述】:
当我在 Borland C++Builder 中编译我的项目时出现错误:
“添加”不是“变体”的成员
我尝试使用自动化 API 执行此操作,但它给了我上面的错误:
const NET_FW_PROFILE2_DOMAIN = 1;
const NET_FW_PROFILE2_PRIVATE = 2;
const NET_FW_PROFILE2_PUBLIC = 4;
const NET_FW_IP_PROTOCOL_TCP = 6;
const NET_FW_IP_PROTOCOL_UDP = 17;
const NET_FW_ACTION_ALLOW = 1;
const NET_FW_RULE_DIR_IN = 1;
const NET_FW_RULE_DIR_OUT = 2;
Variant fwPolicy2, RulesObject, NewRule;
DWORD Profile;
Profile = NET_FW_PROFILE2_PRIVATE | NET_FW_PROFILE2_PUBLIC;
fwPolicy2 = CreateOleObject("HNetCfg.FwPolicy2");
RulesObject = fwPolicy2.OlePropertyGet("Rules");
NewRule = CreateOleObject("HNetCfg.FWRule");
NewRule.OlePropertyGet("Name") = "Text Firewall";
NewRule.OlePropertyGet("Description") = "Text Firewall";
NewRule.OlePropertyGet("Applicationname") = "System_RCC.exe";
NewRule.OlePropertyGet("Protocol") = NET_FW_IP_PROTOCOL_TCP;
NewRule.OlePropertyGet("LocalPorts") = Edit1->Text;
NewRule.OlePropertyGet("Direction") = NET_FW_RULE_DIR_OUT;
NewRule.OlePropertyGet("Enabled") = true;
NewRule.OlePropertyGet("Grouping") = "";
NewRule.OlePropertyGet("Profiles") = Profile;
NewRule.OlePropertyGet("Action") = NET_FW_ACTION_ALLOW;
RulesObject.Add(NewRule);
注意:此代码取自这里:
【问题讨论】:
标签: c++builder