的发展平台,为我们的C#项目目前的Visual Studio 2010,和我的开发计算机是Windows 7的在Windows 7上开发并使用VS 2010时,可以访问Windows 8 .tlb吗?
我需要实现一个Windows界面是Mbnapi.tlb的一部分一些代码,并且仅适用于Windows 8.
当我检查我的电脑时,此文件的Windows 8版本存在(见下文)。
因此,根据帮助,我从以前的SO问题了,我删除从我的项目的参考Mbnapi.tlb,并加入到C的引用:\ Program Files文件\的Windows套件\ 8.0 \ LIB \ win8的\恩\ 64 \ Mbnapi.tlb。
问题是,它似乎没有工作。我保存了更改,然后尝试访问仅在Windows 8中可用的API函数,但它不可见。
当我在Windows 8计算机上打开VS 2012中的项目并对新的Mbnapi.tlb进行相同的引用更改时,我能够在Visual Studio中看到Windows 8功能。
因为.tlbs的Windows 8的版本是在我的开发环境,我认为我应该能够使用它们,甚至无法在Windows 7
测试功能我问题是:有谁知道如何解决这个问题,以便我可以在Windows 7计算机上开发Windows 8?
类型库仅描述COM对象的接口。如果COM对象在Windows 7中不存在(或者具有不同的接口),那么它将不起作用(如你所见)。这听起来像你混淆了'tlb'与它描述的COM对象。 –
我对整件事感到困惑。为什么MS使Win7上的.tlb库可用,如果它后面没有COM对象?有一个使用Mbnapi进行C#项目的指南,但是它在2009年发布,并没有解决这个问题。 –
它确实有一个COM对象,但它是一个具有不同接口的较老的对象 - 当他建议在Win8机器上生成互操作时,Hans说得对。 –