Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.09.17;
Скачать: CL | DM;

Вниз

Преобразование буквенного кода в числовое   Найти похожие ветки 

 
graf ©   (2006-08-30 11:55) [0]

Есть функция которая преобразует числовой код FourCC в буквенный:

Function FourCCToString(lFourCC : DWORD): String;
var
sRet : String;
lUByte : DWORD;
begin
sRet := Chr(lFourCC And $FF);
sRet := sRet + Chr((lFourCC And $FF00) div $100);
sRet := sRet + Chr((lFourCC And $FF0000) div $10000);
lUByte := (lFourCC And $7F000000) div $1000000;
if (lFourCC And $80000000) = $80000000 then
lUByte := lUByte or $80;
sRet := sRet + Chr(lUbyte);
FourCCToString := sRet;
end;

а мне нужно наоборот из буквенного в числовой, нет ли у кого кода такой процедуры, или готовой програмки. Если есть, киньте пожалуйста ссылку.


 
Dmitrij_K   (2006-08-30 12:21) [1]

Function FourCCToString(lFourCC : DWORD): String;
begin
 setlength(result, 4);
 move(lFourCC, result[1], 4);
end;

Function StringToFourCC(lStr : String): DWORD;
begin
 move(lStr[1], result, 4);
end;


 
Dmitrij_K   (2006-08-30 12:26) [2]

Function FourCCToString(lFourCC : DWORD): String;
begin
setlength(result, 4);
result[1] := Chr(LongRec(lFourCC).Bytes[0]);
result[2] := Chr(LongRec(lFourCC).Bytes[1]);
result[3] := Chr(LongRec(lFourCC).Bytes[2]);
result[4] := Chr(LongRec(lFourCC).Bytes[3]);
end;

Function StringToFourCC(lStr : String): DWORD;
begin
 LongRec(Result).Bytes[0] := Ord(lStr[1]);
 LongRec(Result).Bytes[1] := Ord(lStr[2]);
 LongRec(Result).Bytes[2] := Ord(lStr[3]);
 LongRec(Result).Bytes[3] := Ord(lStr[4]);
end;


 
Dmitrij_K   (2006-08-30 12:28) [3]

А это ваще изврат Ж)
Function FourCCToString(lFourCC : DWORD): String;
begin
setlength(result, 4);
DWORD((@result[1])^) := lFourCC;
end

Function StringToFourCC(lStr : String): DWORD;
begin
 Result := DWORD((@lStr[1])^);
end;


 
graf ©   (2006-08-30 13:08) [4]


> Dmitrij_K  

благодарю



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

Текущий архив: 2006.09.17;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.045 c
15-1155497541
VirEx
2006-08-13 23:32
2006.09.17
JDMClient


15-1156310755
Rentgen
2006-08-23 09:25
2006.09.17
Кому не сложно, помогите узнать певицу или название песни!


1-1154509872
McSSN
2006-08-02 13:11
2006.09.17
Виртуальный конструктор Create класса TComponent


2-1156349221
fog
2006-08-23 20:07
2006.09.17
Как c этим бороться?


15-1156610428
imbalacedees
2006-08-26 20:40
2006.09.17
BDE установщик