![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
То ли ;лыжи не едут то ли я ... [IB4.x]
vl_17 © (2002-11-01 15:29:00)Очень давно не писал программы господа проффе ионалы помогите!
rocedure TForm1.Button1Click(Sender: TObject);
Var
s : string;
s1,s2 : PChar;
begin
New(s1);
New(s2);
s1 := PChar(Table1.FieldByName("NAIM1").AsString);
Label2.Caption := "null-terminated string = " + s1;
if (AnsiToOem(s1,s2)) then Label3.Caption := "CharToOem = " + s2
else MessageDlg("fuck!",mtInformation,[mbOk],0);
dispose(s1);
dispose(s2);
end;
По чему не перекодирует?????????????????????
за ранее благодарен!
vl_17 (2002-11-01 16:21:00) [1]Кстати вот VC6 получилось
set.GetFieldValue(0,sRet);
CharToOem(sRet, (LPSTR)(LPCSTR)sRet);
cout << (LPCTSTR)sRet << endl;
В чем ошибаюсь я делая это на Дельфи ума не приложу!
Ведь сделать нужно на них!
vl_17 (2002-11-01 16:14:00) [2]Уважаемый Alexandr!
вот строка источника s= "†??Z?S??
Alexandr (2002-11-01 15:50:00) [3]на. Не парься.
function StrToOem(const AnsiStr: string): string;
begin
SetLength(Result, Length(AnsiStr));
if Length(Result) > 0 then
{$IFDEF WIN32}
CharToOemBuff(PChar(AnsiStr), PChar(Result), Length(Result));
{$ELSE}
AnsiToOemBuff(@AnsiStr[1], @Result[1], Length(Result));
{$ENDIF}
end;
vl_17 (2002-11-01 15:36:00) [4]Удалено модератором
Alexandr (2002-11-01 15:31:00) [5]а чего пишет-то?
P.S. в RXLibruary есть уже стринговсая функция готовая для этого.