2011-10-21 22 views
0

我们公司有一大堆有很多真正有用的COM命令的软件。我们有一个很好的固定基本设置,可以基本绕过GUI并获取所需信息,但我们也为特定客户添加了一些。隐藏IDE的Visual Studio中的Delphi 7 COM命令?

理想情况下,当我们将.exe导入Visual Studio之类的东西时,我们希望将这些特定的COM命令“隐藏”到普通用户。因此,虽然他们会积极主动,但理论上可以使用他们的只有那些明确告诉他们的人。这将消除我们与客户使用功能的许多问题,这些功能并非真正被他们使用,当然也意味着不必支持多个安装程序。

+2

很难做到这一点。您可以将.exe与一个类型库一起发布,该库对您希望隐藏的方法有错误的定义。然后,您可以为可以访问好东西的特殊客户提供不同类型的库。 –

回答

5

您可以将类型库分成标准和特殊类型。虽然特殊实现在COM服务器中仍然可用,但它只能由知道IID和接口描述的人使用。如果您将特殊接口从标准接口继承,那么您的特殊客户只需访问特殊接口即可获得全部功能。

+0

我会在周末看看这个,谢谢! – sxthomson

+0

您是否知道任何资源/代码示例,显示如何按照您的建议分割类型库? – sxthomson

+1

很长一段时间没有与D7一起工作,但恐怕你不能使用这些向导并且必须手动完成。您需要创建一个新的类型库,但不要将{$ R子句添加到您的项目中。否则,特殊类型库对所有人都是可见的。在那里声明它的方法的特殊接口。然后将这些接口添加到实现类中。实现应该已经可用。 –