Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Проблема при создании директории на Pascal


Впервые ©   (2008-12-08 13:50:00) 

Здравствуйте. Я пишу на Паскале програмку. Дошёл до места где нужно создавать директорию. Так выглядит код программы из хелпа Паскаля:
uses WinDos;
 var Dir : PChar;
begin
 Dir :='c:\mydir';
 CreateDir (Dir);
end.

Я пишу:
uses WinDos
 var Dir : String;
begin
 Dir :='c:\mydir';
 CreateDir (Dir); //тут возникает ошибка 26. Type mismatch
end.

Притом если я приравниваю
uses WinDos
var
 Dir : PChar;
 s : string;
begin
 Dir :='c:\mydir';
 s :=Dir;  //тут возникает ошибка 26. Type mismatch
CreateDir (Dir);
end.
Можно ли как-либо приравнять тип PChar к string?
Спасибо


Palladin   (2008-12-09 08:10:00) [1]

Поэтому в Паскале пользуются процедурой MkDir


Anatoly Podgoretsky   (2008-12-08 19:44:00) [2]

Надо учесть один маленький, но важный факт - string в Паскаль, не тоже самое, что в Дельфи.


{RASkov}   (2008-12-08 19:28:00) [3]

> [5] Впервые   (08.12.08 19:06)

Зачем тебе все эти переменные. Тебе можно без них или достаточно одной любого типа, так как PChar и String практически одинаковые...
Везде где используется String, можно использовать PChar. А где используется PChar то String преобразовывается без проблем одноименной функцией PChar()....


codemaster   (2008-12-08 19:24:00) [4]

Ну если тип у тебя Dir : PCHAR зачем ты ещё раз её возводишь в PCHAR??
Create(Dir);


Впервые   (2008-12-08 19:06:00) [5]

Это опять я. Неполучается никак у меня :-((
uses Crt, WinDos;
var
 Dir : PChar;
 st : string;
begin
 ClrScr;
 st :='c:\dir';
 Dir :=PChar(st);
 CreateDir(PChar (Dir));
end.
Мне просто нужно в CreateDir подставить строку. Непреобразовывается тип. Чего то я явно незнаю :-((


Anatoly Podgoretsky   (2008-12-08 15:11:00) [6]

> Впервые  (08.12.2008 13:50:00)  [0]

А зачем ты это делаешь? Переменная S же не используется?


Khim   (2008-12-08 14:07:00) [7]

всегда пожалуста


Впервые   (2008-12-08 14:05:00) [8]

Ага :-) Работает. Спасибо.


Khim   (2008-12-08 13:56:00) [9]

CreateDir (PChar (mydir));  не работает?


Наверх

Титульная страница Поиск, карта сайта Написать письмо