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

Вниз

Как состыковать pchar и string? {дурдом}   Найти похожие ветки 

 
The X   (2006-12-19 21:17) [0]

Получаю с помощью следующей ф-ции путь к каталогу определенной базы данных (не важно):

function GetPhNameByAlias(sAlias: string): string;
var
 Database: TDatabase;  
 pszDir: PChar;
begin
 Database := TDatabase.Create(nil); pszDir := StrAlloc(255);
 try
   Database.AliasName := sAlias;
   Database.DatabaseName := ′TEMP′;
   Database.Connected := True; DbiGetDirectory(Database.Handle, True, pszDir);
   Database.Connected := False;
   Result := StrPas(pszDir);  
 finally
   Database.Free; end;
 end;

В итоге получаю из вышеприведенной функции путь SDir в виде string.
Далее передаю этот путь  в процедуру копирования одного файла из этой директории в другую:

CopyFile(SDir + "are.mb", "C:\are.mb", True);   (все аргументы должны быть string)

И ошибка - несовместимость с pchar и string!!!
Это у меня логики нет? Откуда по цепочке берется этот pchar?
Подскажите плиз!


 
Anatoly Podgoretsky ©   (2006-12-19 21:20) [1]

> The X  (19.12.2006 21:17:00)  [0]

> (все аргументы должны быть string)

(все аргументы должны быть PChar)


 
trubin ©   (2006-12-19 21:38) [2]


> CopyFile(SDir + "are.mb", "C:\are.mb", True);


CopyFile(PChar(LM[1059] + "are.mb"), "C:\are.mb", True);


 
trubin ©   (2006-12-19 21:40) [3]


> CopyFile(PChar(LM[1059] + "are.mb"), "C:\are.mb", True);


извините :)))))

CopyFile(PChar(SDir + "are.mb"), "C:\are.mb", True);


 
The X   (2006-12-19 21:59) [4]

Сенкс, все получилось!


 
TStass   (2006-12-19 23:28) [5]

В "статьях" хорошая статья есть, как строчка устроена.


 
The X   (2006-12-20 12:16) [6]

При этом варианте не работают кириллические папки. Как быть?


 
sniknik ©   (2006-12-20 12:23) [7]

PAnsiChar


 
Anatoly Podgoretsky ©   (2006-12-20 12:56) [8]

> The X  (20.12.2006 12:16:06)  [6]

Чтобы это значило?


 
The X   (2006-12-20 14:53) [9]

Я имею ввиду, что при передаче в CopyFile через pchar имени папки с кириллицей, то не работает копирование (в CopyFile некорректно прописывается кириллица). И кстати, через PAnsiChar я пробовал с самого начала - никакой положительной реакции.
???


 
Anatoly Podgoretsky ©   (2006-12-20 15:03) [10]

> The X  (20.12.2006 14:53:09)  [9]

Не замечено подобного, а может у тебя локализация не верная? Тогда работай с Юникод версией.


 
The X   (2006-12-20 15:29) [11]

Попробовал использовать юникод через pwidechar - вообще чушь сплошная получается, тогда как при pchar и pansichar искажаются только русские буквы и по-одинаковому!
Чушь это все.
???


 
The X   (2006-12-20 15:34) [12]

Пробовал даже менять языковый драйвер на парадоксе в БДЕ - без результата.


 
Anatoly Podgoretsky ©   (2006-12-20 15:37) [13]

> The X  (20.12.2006 15:29:11)  [11]

Использование Юникод подразумевает не только использование pwidechar, но и соответствующей Юникод версии функции.

Точно чушь, плюнь на это займись другой работой.


 
Anatoly Podgoretsky ©   (2006-12-20 15:38) [14]

> The X  (20.12.2006 15:34:12)  [12]

Странно проблемы в файловой системе, а драйвер меняешь в БДЕ.


 
The X   (2006-12-20 16:18) [15]

хех!..))
все равно сенкс!



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

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

Наверх





Память: 0.47 MB
Время: 0.036 c
15-1166984514
wl
2006-12-24 21:21
2007.01.14
шапка деда мороза


1-1164337278
UserControl
2006-11-24 06:01
2007.01.14
Список фреймов / панелей


15-1167052355
Handle
2006-12-25 16:12
2007.01.14
Handle


3-1161855268
lama
2006-10-26 13:34
2007.01.14
Заполнение поле в DBGrid


15-1166602464
Layner
2006-12-20 11:14
2007.01.14
Выбрать монитор, или 20" или 17"





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский