![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Не могу открыть файл :-) [D5, Win2k, WinXP]
madcap © (2002-03-29 00:09:00)Привет !
В FormCreate пишу:
cbHost.Items.LoadFromFile(ExtractFilePath( ParamStr( 0 ) )+"data\smtp.dat"
В Win9x/Me всё работает нормально, а в Win2000/XP выдается ошибка:
Не могу открыть файл ‘smtp.dar’ (по крайней мере, мне так сказали, потому что у меня нет возможности самому это наблюдать)
В чем может быть ошибка?
dd (2002-04-02 13:16:00) [1]
Song (2002-03-29 08:14:00) [2]Извиняюсь, не понял сразу, что на что Вы хотите заменить.
Ему нравится ExtractFilePath(ParamStr(0)), что ж с этим поделаешь? :))
Song (2002-03-29 08:11:00) [3]Application.ExeName вернёт имя_запущенной_программы+путь, а ему нужен только путь.
Поэтому, если уж Вы решили блеснуть эрудицией, то тогда написали хотя бы так: ExtractFileDir(Application.ExeName)
SB.John (2002-03-29 08:06:00) [4]А если вместо ParamStr(0) написать Application.ExeName ?
Song (2002-03-29 07:09:00) [5]Возможно, это особенность w2k
Проверяй на слэш последний символ:
IF ExtractFilePath(ParamStr(0))[Length(ExtractFilePath(ParamStr(0)))]="\" then cbHost.Items.LoadFromFile(ExtractFilePath( ParamStr( 0 ) )+"data\smtp.dat" else cbHost.Items.LoadFromFile(ExtractFilePath( ParamStr( 0 ) )+"\data\smtp.dat";
madcap (2002-03-29 00:43:00) [6]>greenrul
в начале я так и написал
но если вывести всю строку на экран, то получится что то вроде
С:\USER\\data\smtp.dat
и что странно в Win9x/Me это работает, а в win2000/XP нет
greenrul (2002-03-29 00:21:00) [7]а может надо "\data\smtp.dat"?