2011-05-19 41 views
6

是否有任何地方将从fopen返回的开放FILE*转换为用于Windows API函数的HANDLE?如果是这样,怎么样?我们如何将文件*转换为句柄?

+0

如果你愿意去其他方式(这是更常见),看到这个问题http://stackoverflow.com/questions/5193579/how-make-file-from-handle-in-winapi这是从一个句柄创建一个FILE * – 2011-05-19 21:03:10

回答

8

(HANDLE)_get_osfhandle(_fileno(file))

在64位系统上祝你好运如果你使用Visual C++ 2008或更早,但是,因为返回类型为long这些。 :(

+0

+1但我会问这样做的代码 – 2011-05-19 20:59:09

+0

@尼尔:谢谢。可移植性? – Mehrdad 2011-05-19 20:59:27

+1

@ Mehrdad FILE *东西是抽象的,如果你不想抽象,不要使用它。但是你不能有一点抽象。 – 2011-05-19 21:04:46

相关问题