Модераторы: Snowy, bartram, MetalFan, bems, Poseidon, Riply
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> как узнать в какой папке "находится пользователь" 
:(
    Опции темы
RaIDeR
Дата 31.7.2005, 23:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 116
Регистрация: 20.6.2005

Репутация: нет
Всего: 4



Сабж smile
PM MAIL   Вверх
Yanis
Дата 31.7.2005, 23:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2937
Регистрация: 9.2.2004
Где: Москва

Репутация: 13
Всего: 111



Что значит "находится"?


--------------------
user posted image *щёлк*
PM MAIL WWW ICQ   Вверх
RaIDeR
Дата 31.7.2005, 23:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 116
Регистрация: 20.6.2005

Репутация: нет
Всего: 4



Это значит узнать путь к папке в которой работает юзер.
PM MAIL   Вверх
FRAGNATIC
Дата 1.8.2005, 00:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


..::Свирепый Кодер::..
**


Профиль
Группа: Участник
Сообщений: 901
Регистрация: 17.10.2004
Где: ICQ

Репутация: нет
Всего: 11



хм а как насчёт того что юзер может юзать тотал командэр или FAR или ешё чёнить?
а то что юзер сразу может открыть хоть 10 папок сворачивая окна с открытыми папками?
ток если брать да смотреть заголовки открытых и свернутых окон!
Ну или отлавливать чтонить типа создание\удаление\редактирование\ файла ! Переход по коталогу к следушей папке! если такое возмоно)
но эт уже те в раздел ВинАПИ )
PM MAIL   Вверх
<Spawn>
Дата 1.8.2005, 04:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Око кары:)
****


Профиль
Группа: Экс. модератор
Сообщений: 2776
Регистрация: 29.1.2003
Где: Екатеринбург

Репутация: 1
Всего: 64



Если имеется ввиду текущая папка, то GetCurrentDir, GetCurrentDirectory


--------------------
"Для некоторых людей программирование является такой же внутренней потребностью, подобно тому, как коровы дают молоко, или писатели стремятся писать" - Николай Безруков.
PM MAIL ICQ   Вверх
Bes
Дата 1.8.2005, 06:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 806
Регистрация: 8.12.2004

Репутация: нет
Всего: 7



...или заголовок активного окна?... тогда это может быть не только папка
PM MAIL   Вверх
Song
Дата 1.8.2005, 09:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Sysman.ru
***


Профиль
Группа: Участник
Сообщений: 1095
Регистрация: 2.6.2002

Репутация: нет
Всего: 4



ExtractFilePath(ParamStr(0))


--------------------
Прежде чем сказать "Невозможно", подумай, прав ли ты
PM WWW ICQ   Вверх
RaIDeR
Дата 1.8.2005, 16:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 116
Регистрация: 20.6.2005

Репутация: нет
Всего: 4



GetCurrentDir, GetCurrentDirectory, ExtractFilePath(ParamStr(0)) - всё эти ф-ции возвращают путь
к той папке в которой находиться исполняемый файл !
А мне же нужно знать: "путь к папке в которой работает юзер" smile

Может можно отловить открытие/обращение к папкам ? Будь то far или Total Commander ... хоть CMD smile
PM MAIL   Вверх
Гость_man
Дата 1.8.2005, 16:36 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Чем не подходит?
Delphi6 TShellChangeNotifier


  Вверх
Гость_man
Дата 1.8.2005, 16:54 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Если нужно для всех процессов, то WinNT = ReadDirectoryChangesW
  Вверх
RaIDeR
Дата 1.8.2005, 17:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 116
Регистрация: 20.6.2005

Репутация: нет
Всего: 4



А как с пощью ShellChangeNotifier узнать путь к той папке в которой работает юзер ?
-----
Добавлено @ 17:09
Цитата

ReadDirectoryChangesW(
HANDLE hDirectory, // handle to the directory to be watched
....

Но для того чтобы получить хэндл папки нужно создать ёё, есть ли способы получить хэндл уже созданной папки?

Это сообщение отредактировал(а) RaIDeR - 1.8.2005, 17:11
PM MAIL   Вверх
Guest
Дата 1.8.2005, 17:16 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Код

Remarks

To obtain a handle to a directory, use the CreateFile function with FILE_FLAG_BACKUP_SEMANTICS as follows:

hDir = CreateFile (
          DirName,                       // pointer to the file name
          FILE_LIST_DIRECTORY,           // access (read-write) mode
          FILE_SHARE_READ|FILE_SHARE_DELETE,  // share mode
          NULL,                               // security descriptor
          OPEN_EXISTING,                      // how to create
          FILE_FLAG_BACKUP_SEMANTICS,         // file attributes
          NULL                           // file with attributes to copy

        );


  Вверх
Гость_man
Дата 1.8.2005, 17:16 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











все есть в хелпах, я же дал функцию, осталось только F1 нажать...
  Вверх
RaIDeR
Дата 1.8.2005, 17:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 116
Регистрация: 20.6.2005

Репутация: нет
Всего: 4



F1 Я нажал уже давно, вот только понять толком ничё не могу smile
Люди плиз приведите пример как нужно использовать ф-цию ReadDirectoryChangesW smile
PM MAIL   Вверх
Song
Дата 2.8.2005, 08:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Sysman.ru
***


Профиль
Группа: Участник
Сообщений: 1095
Регистрация: 2.6.2002

Репутация: нет
Всего: 4



Цитата(RaIDeR @ 1.8.2005, 17:25)
А мне же нужно знать: "путь к папке в которой работает юзер"

А что это такое?
где он с ней работает? Может в быть в проводнике? Может быть в фаре? или ещё как-то "работает" ? smile


--------------------
Прежде чем сказать "Невозможно", подумай, прав ли ты
PM WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: WinAPI и системное программирование"
Snowybartram
MetalFanbems
PoseidonRrader
Riply

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Delphi обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • 99% ответов по WinAPI можно найти в MSDN Library, оставшиеся 1% здесь

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, bartram, MetalFan, bems, Poseidon, Rrader, Riply.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: WinAPI и системное программирование | Следующая тема »


 




[ Время генерации скрипта: 0.0750 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.