Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Архив форумов ЦИТФорума
Море(!) вопросов - Море(!) ответов
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 
Как правильно задавать вопросы

Как определить имя файла по handle?

 
Перейти:  
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Программирование
Предыдущая тема :: Следующая тема  
Автор Сообщение
SL



Зарегистрирован: 06.05.2003
Сообщения: 14
Откуда: СПб

СообщениеДобавлено: Чт Июн 27 2002 13:33    Заголовок сообщения: Как определить имя файла по handle? Ответить с цитатой

Как определить имя файла по handle?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
яяя
Гость





СообщениеДобавлено: Сб Июн 29 2002 06:46    Заголовок сообщения: в какой системе? если в NT - элементарно, могу рассказать если надо (-) Ответить с цитатой

-
Вернуться к началу
SL



Зарегистрирован: 06.05.2003
Сообщения: 14
Откуда: СПб

СообщениеДобавлено: Сб Июн 29 2002 12:57    Заголовок сообщения: Надо, вообще-то хотелось бы не только в NT Ответить с цитатой

-
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
яяя
Гость





СообщениеДобавлено: Сб Июн 29 2002 14:25    Заголовок сообщения: так Ответить с цитатой

typedef struct _FILE_NAME_INFORMATION { // Information Classes 9 and 21
ULONG FileNameLength;
WCHAR FileName[1];
} FILE_NAME_INFORMATION, *PFILE_NAME_INFORMATION,
FILE_ALTERNATE_NAME_INFORMATION, *PFILE_ALTERNATE_NAME_INFORMATION;

typedef struct _IO_STATUS_BLOCK {
DWORD Status;
ULONG Information;
} IO_STATUS_BLOCK, *PIO_STATUS_BLOCK;

NTSYSAPI
NTSTATUS
NTAPI
ZwQueryInformationFil.. HANDLE FileHandle,
OUT PIO_STATUS_BLOCK IoStatusBlock,
OUT PVOID FileInformation,
IN ULONG FileInformationLength,
IN FILE_INFORMATION_CLASS FileInformationClass);

FileInformationClass надо брать равным 9.
FileInformationLength - брать большим.
FileNameLength - число байт.
Вернуться к началу
яяя
Гость





СообщениеДобавлено: Сб Июн 29 2002 14:31    Заголовок сообщения: еще Ответить с цитатой

То что заменилось точками:

ZwQueryInformationFile
(HANDLE


еще можно так.

NTSYSAPI
NTSTATUS
NTAPI
ZwQueryObject
(
IN HANDLE ObjectHandle,
IN OBJECT_INFORMATION_CLASS
ObjectInformationClass,
OUT PVOID ObjectInformation,
IN ULONG ObjectInformationLength,
OUT PULONG ReturnLength OPTIONAL);

ObjectInformationClass = 1

GENERIC_MAPPING это дворд

typedef struct _UNICODE_STRING
{
WORD Length;
WORD MaximumLength;
PWSTR Buffer;
} UNICODE_STRING, *PUNICODE_STRING;

буфер такой

typedef struct _OBJECT_TYPE_INFORMATION { // Information Class 2
UNICODE_STRING Name;
ULONG ObjectCount;
ULONG HandleCount;
ULONG Reserved1[4];
ULONG PeakObjectCount;
ULONG PeakHandleCount;
ULONG Reserved2[4];
ULONG InvalidAttributes;
GENERIC_MAPPING GenericMapping;
ULONG ValidAccess;
UCHAR Unknown;
BOOLEAN MaintainHandleDatabase;
POOL_TYPE PoolType;
ULONG PagedPoolUsage;
ULONG NonPagedPoolUsage;
} OBJECT_TYPE_INFORMATION, *POBJECT_TYPE_INFORMATION;

А вообще советую книгу Наббетта найти в инете. Там это есть все.
Вернуться к началу
SL



Зарегистрирован: 06.05.2003
Сообщения: 14
Откуда: СПб

СообщениеДобавлено: Пн Июл 01 2002 11:49    Заголовок сообщения: Кто такой Наббетт? Ответить с цитатой

В русских ресурсах такого вообще не нашлось, в английских, непонятно как пишется Наббетт,
Nubbett или Nabbett ??? тоже вобщем-то ничего похожего не нашел.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Программирование Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2002 phpBB Group
Русская поддержка phpBB

 

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 6608306, ICQ 232284597
Пресс-релизы — pr@citforum.ru
Послать комментарий
Информация для авторов
This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2006 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...