2011-08-09 145 views
-2

我的程序是用C写我要使用的库winnt.h,但我不再使用Windows。我可以在Linux中使用winnt.h吗?

+0

检查NT实际上是什么:) – Cynede

+1

为什么你想在Linux上的Windows功能?这就像去高档餐厅一样,询问你是否可以从麦当劳订购。 –

+0

现在,我不使用Windows。 – 6LYTH3

回答

5

没有,那么你可以,但它不会做任何好 - the.h文件只是声明在库中定义的是仅适用于Windows

8

似乎是一个奇怪的问题函数;你应该从winnt.h中澄清你实际需要哪些函数,以便学习Linux的等价物。 winnt.h实际上不是一个通用的“库”,它只是一个内置Windows特定函数的接口。

有了,作为一个主要的警告,你可以通过尝试与酒的帮助下运行你的应用程序得到一定程度的你想要什么。请参阅http://www.winehq.org/如果您只是想运行现有的应用程序,那可能是一个合理的解决方案。但是,如果您正在尝试制作应用程序的Linux版本,那对您无能为力。

0

你想要什么零件winnt.h使用?当然,如果你需要一些很好的宏或类型定义,你可以自由地将它复制到你自己的头文件(当然,依赖)。但是,如果您在Linux环境中将所有winnt.h文件包含到您的程序中,您将收到大量错误消息。其中一个原因,它是由马丁·贝克特在他的答复明显。

1

号你不能。

winnt.h包含很多取决于Windows环境的宏和大量仅存在于Windows特定库中的函数声明。因此,在Linux上使用winnt.h并不是很有用(或可能)。

也就是说,你可以使用Winelib,包括大多数的那些针对Windows的头展示的功能,你可以通过链接Winelib程序获得这些功能。一般来说,这可能不是一个好主意,因为Winelib相对不稳定(与原生Windows版本相比,给定API函数的功能可能不存在,不完整,错误或不兼容)。寻找您需要的Linux本地替代方案是一个更好的主意。

相关问题