Форум: "Начинающим";
Текущий архив: 2006.02.19;
Скачать: [xml.tar.bz2];
Внизперенести с С в Delphi5 Найти похожие ветки
← →
SDssss (2006-02-01 11:47) [0]Как перевести числа типа 0x68 в cardinal,
a:cardinal;
a:="0x68" не прокатывает
=========перенести с С в Delphi5==============
d:DWORD
BYTE *b_code;
struct
RRR
d:=(DWORD)((BYTE*)b_code + offsetof(RRR, libraryname));
strcpy((char*)name2, Name );
Name:char *Name;
BYTE name2 [200];
← →
Cash © (2006-02-01 11:54) [1]Не 0x68, а $68 используй.
a:=$68;
← →
Verg © (2006-02-01 12:22) [2]RRR = record
PRRR = ^RRR;
b_code : PBYTE;
d : DWORD;
d := DWORD(@PRRR( b_code )^.libraryname);
-----------------------------------------
Name : pchar;
name2 : array[0..199] of byte;
StrCopy( pchar(@name2[0]), Name );
← →
SDssss (2006-02-01 17:08) [3]Никак компил
d:= DWORD(@CMAGIC(b_code )^.libraryname);
Error:Missing operator or semicolon
былоBYTE *b_code
,
но изменил наp_code:pointer;
так как перед этим былоp_code:=VirtualAlloc
так не использую
RRR = record
PRRR = ^RRR;
b_code : PBYTE;
d : DWORD;
использую так
type
RRR = packed record
b_code : PBYTE;
d : DWORD;
...
← →
TUser © (2006-02-01 17:19) [4]
> Error:Missing operator or semicolon
Забыл поставить ;
← →
SDssss (2006-02-01 20:02) [5]
d:= DWORD(@CMAGIC(b_code )^.libraryname);
есть ,курсор указывает на b_code ,ему что-то не понравилось
← →
Zeqfreed © (2006-02-01 21:05) [6]SDssss (01.02.06 20:02) [5]
Какое сообщение об ошибка пишет-то?
← →
SDssss (2006-02-02 00:16) [7]Error:Missing operator or semicolon
видать потому что я сменил описание b_code : PBYTE на pointer
несоотвествие типов
← →
evvcom © (2006-02-02 08:53) [8]
> (@CMAGIC(b_code )^.
Что это? Идея такая: берешь адрес переменной (@b_code), его приводишь к типизированному указателю, а потом разадресовываешь. Если у тебя CMAGIC - типизированный указатель, то правильно так:CMAGIC(@b_code )^.
Чуешь разницу?
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.02.19;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.04 c