Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.02.29;
Скачать: [xml.tar.bz2];

Вниз

открыть файл на СОХРАНЕНИЕ   Найти похожие ветки 

 
heady   (2004-02-12 19:43) [0]

Hi, All! Есть поле ввода Edit2, куда юзер вводит путь к файлу, в который будет производиться запись - как проверить корректность его ввода?
такой вариант:
var ResFile:TextFile;

If FileExists(Edit2.Text)=false then
begin
{$I-}
assign(ResFile,Edit2.Text);
rewrite(ResFile);
if IOResult<>0 then
begin
MessageDlg("Неправильный ввод имени сохраняемого файла!",mtWarning,[mbOK],0);
Edit2.SetFocus;
end;
end;
почему-то не работает пишет - Incompatible types: "TCaption" and "PAnsiChar" посоветуйте что нибудь. Зарание благодарен.


 
хз   (2004-02-12 19:46) [1]

Для проверки коректности ввода достаточно одного FileExists.


 
Anatoly Podgoretsky   (2004-02-12 19:50) [2]

хз © (12.02.04 19:46) [1]
Недостаточно, путь использован правильный, только сильно устаревший, в Дельфи существует механизм исключений.

heady (12.02.04 19:43)
Пирведи к "PAnsiChar" в том месте где ругается


 
heady   (2004-02-12 19:51) [3]

Нет - я имел ввиду проверку возможности СОХРАНЕНИЯ.
чтобы криворукий юзер не пытался создать файл скажем "c:456456\1.txt"


 
heady   (2004-02-12 19:55) [4]

2Anatoly Podgoretsky
если можно поподробнее - как привести TCaption к "PAnsiChar"?
насчет устаревшего пути - ты прав - переучиваюсь с TP7 ;)


 
Anatoly Podgoretsky   (2004-02-12 19:57) [5]

Это правильное имя, только конечно Rewrite не справится, но другая функция запросто.


 
heady   (2004-02-12 20:00) [6]

2Anatoly Podgoretsky а можно задать предсказуемый вопрос - а какая справится? :)


 
Defunct   (2004-02-12 20:02) [7]

А чем не подходит SaveDialog?

If SaveDialog.Execute Then Сохраняем... Else Не сохраняем


 
хз   (2004-02-12 20:08) [8]

> если можно поподробнее - как привести TCaption к "PAnsiChar"?

PChar(Edit.Text);


 
heady   (2004-02-12 20:08) [9]

2Defunct он(SaveDialog) тоже есть - но хочется же все как у людей - строка ввода(чтобы ручками путь вводить) а потом кнопулька "обзор" :)


 
хз   (2004-02-12 20:10) [10]

>> хз © (12.02.04 19:46) [1]
> Недостаточно...

А почему, если не секрет?


 
heady   (2004-02-12 20:12) [11]

2хз повторюсь - я имел ввиду проверку возможности СОХРАНЕНИЯ.
чтобы криворукий юзер не пытался создать файл скажем "c:456456\1.txt"


 
heady   (2004-02-12 20:34) [12]

s:string;

If FileExists(Edit2.Text)=false then
begin
{$I-}
s:=PChar(Edit2.Text);
assign(ResFile,s); ТУТ выдается ошибка Incompatible types: "TPersistent" and "Text"


 
Defunct   (2004-02-13 01:12) [13]

AssignFile()


 
Defunct   (2004-02-13 01:18) [14]

> heady (12.02.04 20:34) [12]
> assign(ResFile,s); ТУТ выдается ошибка Incompatible types: "TPersistent" and "Text"

AssignFile(ResFile,S);


 
heady   (2004-02-13 18:38) [15]

Огромное спасибо! я AssignFile - до этого дошел сам! чертов TP :)

полностью ответ на мой вопрос выглядит:
{Проверка на возможность записи файла}
If FileExists(Edit2.Text)=false then
begin
{$I-}
assignFile(ResFile,Edit2.Text);
rewrite(ResFile);
if IOResult<>0 then
begin
MessageDlg("Неправильный ввод имени сохраняемого файла!",mtWarning,[mbOK],0);
Edit2.SetFocus;
Exit;
end;
end;

всем огромнейшее спасибо!!! мне стало стыдно за мой абсолютно чайниковский вопрос :)


 
WebErr   (2004-02-13 18:49) [16]

А почему всё-таки криворукий юзер не может вызвать SaveDialog?!! У этой кнопулины есть замечательный метод Execute. Кстати PAnsiChar можно запросто получить из TCaption, который всего лишь type TCaption = String. Просто PChar(SomeCaption).


 
heady   (2004-02-16 17:40) [17]

а мы рассматриваем случай продвинутого любопытно-злорадного криворукого юзера, которому непраменно надо путь ручками прописать - "а вдруг сглючит" :)



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2004.02.29;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.014 c
14-94176
KD
2004-02-07 14:01
2004.02.29
Exploits on Delpji


3-93786
CAV (Alexander)
2004-02-02 13:36
2004.02.29
Преобразование даты в MS SQL 2000


3-93763
SPIRIT
2004-02-04 10:29
2004.02.29
SQL Запрос


1-93928
ser_ega
2004-02-15 00:36
2004.02.29
Ярлык


8-94038
miek
2003-10-24 16:52
2004.02.29
Генератор текстур





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский