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

Вниз

Помогите перевести string в keycode   Найти похожие ветки 

 
Scazzi ©   (2007-12-06 13:08) [0]

Есть задачка перевести строку типа string в keycode
тоесть чтобы строка "hello" выглядила как "#72#69#76#76#79"

Помогите пожалста очень надо


 
Джо ©   (2007-12-06 13:10) [1]

Ord


 
Джо ©   (2007-12-06 13:10) [2]

Для каждого символа строки.


 
Scazzi ©   (2007-12-06 13:12) [3]

а не можешь пример написать... я просто с Дельфи очень мало знаком


 
MBo ©   (2007-12-06 13:15) [4]

for i := 1 to Length(s) do
 keycode := keycode + "#" + IntToStr(Ord(s[i]));// или IntToHex(Ord(s[i]), 2);


 
Scazzi ©   (2007-12-06 13:16) [5]

Спасибо большое


 
Германн ©   (2007-12-06 13:38) [6]

Как ни стараюсь, а все равно строка "hello" не выглядит как "#72#69#76#76#79".
Что я делаю не так?
:)


 
engine ©   (2007-12-06 13:40) [7]

> [6] Германн ©   (06.12.07 13:38)

"HELLO"
)


 
Джо ©   (2007-12-06 13:41) [8]

> [6] Германн ©   (06.12.07 13:38)
> Что я делаю не так?
> :)

Наверное, плохо стараешься? :)


 
Германн ©   (2007-12-06 13:43) [9]


> engine ©   (06.12.07 13:40) [7]

:)))


 
Anatoly Podgoretsky ©   (2007-12-06 13:58) [10]


> Как ни стараюсь

Смотря как стараешься


 
Германн ©   (2007-12-06 14:03) [11]


> Anatoly Podgoretsky ©   (06.12.07 13:58) [10]

Ну тогда вот так нужно:
for i := 1 to Length(s) do
keycode := keycode + "#" + IntToStr(Ord(UpCase(s[i])));

А все прочие - ламеры!


 
{RASkov} ©   (2007-12-06 14:06) [12]

Вообщето это:

> #72#69#76#76#79"

точно не это:
>hello

:) Я тоже не сразу въехал)
Но вот так, имхо, красивее
#48#45#4C#4C#4F


 
Dib@zol ©   (2007-12-06 14:41) [13]

function ConvToKeyCodes(s:string):PChar;
asm
 PUSH EBX;
 PUSH ECX;
 PUSH EDX;
 PUSH EDI;
 PUSH ESI;

 MOV ECX, DWORD PTR [EAX-4];
 PUSH ECX;
 MOV EBX, ECX;
 SHL ECX, 1;
 ADD ECX, EBX;
 INC ECX;
 MOV EDI, ECX;

 MOV EBX, EAX;
 DEC EBX;

 PUSH ECX;
 CALL GetMemory;
 POP ECX;
 POP ECX;
 ADD EDI, EAX;
 MOV BYTE PTR[EDI], 0;
 DEC EDI;
 XOR EAX, EAX;
 MOV DL, 10h;

 @loop:
   MOV AL, BYTE PTR [EBX+ECX];
   MOV ESI, ECX;
   MOV ECX, 2;
   @next:
     IDIV DL;
     CMP AH, 0Ah;
     JL @less;
     ADD AH, 07h;
     @less:
     ADD AH, 30h;
     MOV BYTE PTR [EDI], AH;
     XOR AH, AH;
     DEC EDI;
   LOOP @next;
   MOV BYTE PTR [EDI], 23h;
   DEC EDI;
   MOV ECX, ESI;
 LOOP @loop;

 INC EDI;
 MOV EAX, EDI;

 POP ESI;
 POP EDI;
 POP EDX;
 POP ECX;
 POP EBX;
end;

Вота.



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

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

Наверх





Память: 0.47 MB
Время: 0.006 c
2-1196830593
Мурзик
2007-12-05 07:56
2007.12.30
Как присвоить PopupMenu?


2-1197006707
Свой
2007-12-07 08:51
2007.12.30
TQuery ответ и регистр букв


3-1188291869
parivet
2007-08-28 13:04
2007.12.30
TClientDataSet


15-1196016368
@!!ex
2007-11-25 21:46
2007.12.30
Прокомментируйте сборку


15-1196147650
em240
2007-11-27 10:14
2007.12.30
MsSql2000+транзакции





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