Pergunta

No Unix, tudo é um arquivo, assim você pode usar o arquivo i / o funções com tubos, arquivos, bases, etc. mas no Windows, a API que você usa depende do tipo de I / O PUNHO você tem.

A minha pergunta é: dada uma alça de como é possível determinar qual o tipo subjacente é? Por exemplo, eu tenho um identificador que é ou arquivo real, ou um chamado tubo / anônimo. Eu gostaria de saber se PeekNamedPipe pode ser chamado neste PUNHO.

Foi útil?

Solução

Use GetFileType. Verifique se há um valor de retorno de FILE_TYPE_PIPE.

http://msdn.microsoft.com/ en-us / library / aa364960 (VS.85) .aspx

Outras dicas

Sem tentar ser bobo. Chame-o. Se você receber um código de erro de volta dizendo que o tipo errado de coisa ... então você sabe.

Uma das principais semelhante é relevent ao tentar ver se o usuário tem os direitos para abrir um arquivo. Sua possível para tentar engenheiro totalmente inversa e re-implementar a lógica do sistema de ficheiros passa por testar as ACLs. Ou, apenas tentar e abri-lo.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top