【C转delphi】请帮忙转一个代码片段 typedef struct _WMPicture { LPWSTR pwszMIMEType; BYTE bPictureType; LPWSTR pwszDescription; DWORD dwDataLen; BYTE * pbData;}WM_PICTURE;请问这个在delphi中如何写?谢谢您的帮忙。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 type WM_PICTURE = record pwszMIMEType: PWideChar; bPictureType: Byte; pwszDescription: PWideChar; dwDataLen: Cardinal; pbData: PByte; end; 还要加个type WM_PICTURE = _WMPicture 我补充一下这是delphi的写法习惯P开头的表示是指针,声明时不分配内存t开头表示是结构,声明时即分配内存var MyWM_PICTURE1,MyWM_PICTURE2: T[/color]WM_PICTUREbegin ... MyWM_PICTURE1 := MyWM_PICTURE2; //千万别这样操作,程序不会报错,但MyWM_PICTURE1值不会改变,不会把MyWM_PICTURE2的内容复制给MyWM_PICTURE1,不会内存拷贝。什么都没变,就这样。 ...end; 4楼乱讲,你看清楚是 typedef struct _WMPicture { LPWSTR pwszMIMEType; BYTE bPictureType; LPWSTR pwszDescription; DWORD dwDataLen; BYTE * pbData;}WM_PICTURE;而不是typedef struct _WMPicture { LPWSTR pwszMIMEType; BYTE bPictureType; LPWSTR pwszDescription; DWORD dwDataLen; BYTE * pbData;}* WM_PICTURE;根本就不是你所说的结构指针至于结构指针和普通指针的区别,大家都知道 type _WM_PICTURE = packed record pwszMIMEType: PWideChar; bPictureType: Byte; pwszDescription: PWideChar; dwDataLen: Cardinal; pbData: PByte; end; WM_PICTURE = _WM_PICTURE; PWM_PICTURE = ^WM_PICTURE; 我只是提醒楼主在用delphi的时候要注意我所说的 用什么API可以把文件锁定到win7的任务栏呢? 那位朋友对cxGrid了解点,当一列移动到后一列时,某一列等于另某两列的计算值? 为什么我在我窗体里写的FastReport 事件都不发生 请教raima data manager delphi用于CAD开发的基础方面请教. 数据库连接问题,请高手帮忙先谢了!!!! ERP开发广档,感兴趣的进来看看? 100分!!!! 数据库大量数据处理失败(郁闷),大家急救啊!!!!! 为什么用delphi封装的ocx在vb下不能用? cxgrid打印预览的问题 delphi中怎样实现 点击dbgrid的一行改变这行的颜色
WM_PICTURE = record
pwszMIMEType: PWideChar;
bPictureType: Byte;
pwszDescription: PWideChar;
dwDataLen: Cardinal;
pbData: PByte;
end;
type
WM_PICTURE = _WMPicture
P开头的表示是指针,声明时不分配内存
t开头表示是结构,声明时即分配内存
var
MyWM_PICTURE1,MyWM_PICTURE2: T[/color]WM_PICTURE
begin
...
MyWM_PICTURE1 := MyWM_PICTURE2; //千万别这样操作,程序不会报错,但MyWM_PICTURE1值不会改变,不会把MyWM_PICTURE2的内容复制给MyWM_PICTURE1,不会内存拷贝。什么都没变,就这样。
...
end;
LPWSTR pwszMIMEType;
BYTE bPictureType;
LPWSTR pwszDescription;
DWORD dwDataLen;
BYTE * pbData;
}WM_PICTURE;而不是typedef struct _WMPicture {
LPWSTR pwszMIMEType;
BYTE bPictureType;
LPWSTR pwszDescription;
DWORD dwDataLen;
BYTE * pbData;
}* WM_PICTURE;
根本就不是你所说的结构指针
至于结构指针和普通指针的区别,大家都知道
_WM_PICTURE = packed record
pwszMIMEType: PWideChar;
bPictureType: Byte;
pwszDescription: PWideChar;
dwDataLen: Cardinal;
pbData: PByte;
end;
WM_PICTURE = _WM_PICTURE;
PWM_PICTURE = ^WM_PICTURE;