|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
29.10.2007, 09:18 | #11 |
Форумчанин
Регистрация: 15.10.2007
Сообщений: 147
|
Кода пока не вижу .
С PChar можно работать как и со string. Иногда нужно просто учитывать, что это указатель на сивол, т.е. адрес, а не код символа. |
29.10.2007, 09:35 | #12 |
Пользователь
Регистрация: 25.10.2007
Сообщений: 41
|
Уже всяко его просклонял и запутался... Может там и объявления лишние есть, вот только что еще раз пыта править.
|
29.10.2007, 11:08 | #13 |
Форумчанин
Регистрация: 15.10.2007
Сообщений: 147
|
DosToWin:=Pchar(Chr(I+64))
А если в uses библиотеки добавишь Windows то сможешь пользоваться всякими гадостями типа OEMToChar, OEMToANSI и прочмими |
29.10.2007, 11:55 | #14 |
Пользователь
Регистрация: 25.10.2007
Сообщений: 41
|
Мм.. Забавно. Попробую.
|
29.10.2007, 12:08 | #15 |
Форумчанин
Регистрация: 15.10.2007
Сообщений: 147
|
Что забавного? PChar или OEMToChar.
Второе - дык оно всегда там было =) А первое... П ведь сам писал в коде i:=Ord(Ch^); то есть разыменовывал указатель, ну а про обратную процедуру забыл? =) |
29.10.2007, 12:41 | #16 |
Пользователь
Регистрация: 25.10.2007
Сообщений: 41
|
К сожелению, я ее и не знал в общем то.. Поэтому и проблема возникла.
|
30.10.2007, 11:34 | #17 |
Пользователь
Регистрация: 25.10.2007
Сообщений: 41
|
А не подскажешь, где можно найти описание етих процедур и функций? В Help`e как то скудновато по поводу OEM расказано.
|
30.10.2007, 16:04 | #18 |
Пользователь
Регистрация: 25.10.2007
Сообщений: 41
|
Че то все равно куча ошибок сыпится.
Попробовал уйти от вызова функции DosToWin из своей dll, прописал такую конструкцию: Uses Windows, .... Var St, StBuff : TString; DefCh : Char; ... Repeat inc (StPos); ReadLn (F, St); ChPos:=0; StBuff:=''; Repeat inc (ChPos); if Label5.Caption = 'DOS' then begin DefCh:=St[ChPos-1]; if St [ChPos]>#127 then OemToChar (@St [ChPos-1], @DefCh); StBuff:=StBuff+DefCh; end; Until St [ChPos] = #0; PreviewMemo.Lines.Add (StBuff); Until EOF (F); ........ Когда происходит обращение к OemToChar или сразу после него наступает Access Violation. Как такого избежать? |
30.10.2007, 16:23 | #19 |
Форумчанин
Регистрация: 15.10.2007
Сообщений: 147
|
не @XX , а PChar(XX) попробуй.
|
30.10.2007, 16:29 | #20 |
Пользователь
Регистрация: 25.10.2007
Сообщений: 41
|
Заменил на OemToChar (PChar (St [ChPos-1]), PChar (DefCh))..
Результат тот же |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Программа которая делает кроссворд | Иллидан | Софт | 15 | 02.12.2014 06:34 |
Как создать обратную функцию, которая из уникального номера будет возвращать строку? | SkAndrew | Общие вопросы Delphi | 8 | 06.04.2008 21:10 |
программа, которая выводит на экран одно из данных слов | vados | Паскаль, Turbo Pascal, PascalABC.NET | 11 | 26.10.2007 23:47 |
Скажите функцию которая будет запускать приложение при каждой загрузке винды | pentiumForever | Общие вопросы Delphi | 9 | 08.09.2007 01:54 |
Поиск данных в текстовом файле | BizON | Помощь студентам | 1 | 06.06.2007 18:17 |