- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
[StructLayout(LayoutKind.Explicit, Size=264)]
public struct STRRET
{
[FieldOffset(0)]
public UInt32 uType; // One of the STRRET_* values
[FieldOffset(4)]
public IntPtr pOleStr; // must be freed by caller of GetDisplayNameOf
[FieldOffset(4)]
public IntPtr pStr; // NOT USED
[FieldOffset(4)]
public UInt32 uOffset; // Offset into SHITEMID
[FieldOffset(4)]
public IntPtr cStr; // Buffer to fill in (ANSI)
}
Обертка над структурой STRRET. Доставляет тут http://www.pinvoke.net/default.aspx/Structures/STRRET.html
guest 20.08.2009 22:44 # 0
guest 21.08.2009 05:14 # 0
pStr, которой нет в *.h файле еще и NOT USED
строку cStr, хранящуюся по значению (char cStr[MAX_PATH];), патаются пихнуть указатель
guest 21.08.2009 09:32 # 0
guest 09.09.2009 23:57 # 0
Ну и кто здесь быдлокодер?
На msdn:
union
{
LPWSTR pOleStr;
UINT uOffset;
char cStr[MAX_PATH];
} DUMMYUNIONNAME;
Это они так сишные union'ы описали, всё верно. Что такое юнионы знаем хоть?
Kuros 20.08.2009 22:45 # 0
guest 09.09.2009 23:55 # 0
По ссылке по традиции не ходил.