![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| Alekesy |
|
|||
|
Unregistered |
Как сделать чтобы ту директорию, которую выбрал
при помощи компонента RxLib TDirectoryEdit можно было бы использовать для поиска в ней файлов ? AnsiString DName; HANDLE hFind; WIN32_FIND_DATA Find; DName=DirectoryEdit1->InitialDir ; do { hFind = FindFirstFile(DName, &Find); ... и т.д. Здесь вместо DName хотелось бы как раз и подставить полный путь к директории... Но компилятор даёт ошибку "Cannot convert 'AnsiString'to const char " И ещё чтобы прописать путь нужно использовать "\\" а результат DirectoryEdit1->InitialDir даёт путь с одним "\" Подскажите пожалуйста, что мне делать? Или быть может есть другой путь ? Например , используя билдеровский стандартный TSaveDialog ? |
|||
|
||||
| Song |
|
|||
![]() Sysman.ru ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1095 Регистрация: 2.6.2002 Репутация: 2 Всего: 4 |
А у TDirectoryEdit есть что-нить типа FileName ?
-------------------- Прежде чем сказать "Невозможно", подумай, прав ли ты |
|||
|
||||
| Medved |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 7209 Регистрация: 15.9.2002 Где: Kazakhstan, Astan a Репутация: 14 Всего: 154 |
hFind = FindFirstFile(DName, &Find);
здесь у тебя ошибка, надо писать так: hFind = FindFirstFile(PChar(DName), &Find); -------------------- |
|||
|
||||
| Medved |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 7209 Регистрация: 15.9.2002 Где: Kazakhstan, Astan a Репутация: 14 Всего: 154 |
The FindFirstFile function searches a directory for a file whose name matches the specified filename. FindFirstFile examines subdirectory names as well as filenames.
HANDLE FindFirstFile( LPCTSTR lpFileName, // pointer to name of file to search for LPWIN32_FIND_DATA lpFindFileData // pointer to returned information ); Parameters lpFileName Windows 95: Points to a null-terminated string that specifies a valid directory or path and filename, which can contain wildcard characters (* and ?). This string must not exceed MAX_PATH characters. Windows NT: Points to a null-terminated string that specifies a valid directory or path and filename, which can contain wildcard characters (* and ?). There is a default string size limit for paths of MAX_PATH characters. This limit is related to how the FindFirstFile function parses paths. An application can transcend this limit and send in paths longer than MAX_PATH characters by calling the wide (W) version of FindFirstFile and prepending "\\?\" to the path. The "\\?\" tells the function to turn off path parsing; it lets paths longer than MAX_PATH be used with FindFirstFileW. This also works with UNC names. The " \\?\" is ignored as part of the path. For example, "\\?\C:\myworld\private" is seen as "C:\myworld\private", and "\\?\UNC\bill_g_1\hotstuff\coolapps" is seen as "\\ bill_g_1\hotstuff\coolapps". lpFindFileData Points to the WIN32_FIND_DATA structure that receives information about the found file or subdirectory. The structure can be used in subsequent calls to the FindNextFile or FindClose function to refer to the file or subdirectory. -------------------- |
|||
|
||||
| Medved |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 7209 Регистрация: 15.9.2002 Где: Kazakhstan, Astan a Репутация: 14 Всего: 154 |
А насчет одного слеша, то это просто -
hFind = FindFirstFile(PChar('\'+DName), &Find); -------------------- |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |