⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 oleidl.zc

📁 实现树形结构
💻 ZC
字号:
//[c]
import "windef"
//[c]
public

typedef THIS = -> void
typedef IID = GUID
typedef REFIID = [] IID
typedef CLIPFORMAT = WORD
//[c]
//[c]
//[of]:	unknwn
//[c]
import def [name="c"] IID_IUnknown : IID

typedef LPUNKNOWN = -> void
//[cf]
//[of]:	objidl
//[c]
typedef LPSTREAM = -> void
typedef LPSTORAGE = -> void
//[c]
struct LPDVTARGETDEVICE
	tdSize : DWORD
	tdDriverNameOffset : WORD
	tdDeviceNameOffset : WORD
	tdPortNameOffset : WORD
	tdExtDevmodeOffset : WORD
	tdData : [1] BYTE
end
typedef DVTARGETDEVICE = local LPDVTARGETDEVICE
//[c]
struct LPFORMATETC
	cfFormat : CLIPFORMAT
	ptd : DVTARGETDEVICE
	dwAspect : DWORD
	lindex : LONG
	tymed : DWORD
end
typedef FORMATETC = local LPFORMATETC
//[c]
struct LPSTGMEDIUM
	tymed : DWORD
	anonymous union : 
		union
			hBitmap : HBITMAP
			hMetaFilePict : PVOID
			hEnhMetaFile : HENHMETAFILE
			hGlobal : HGLOBAL
			lpszFileName : LPWSTR
			pstm : LPSTREAM
			pstg : LPSTORAGE
		end
	pUnkForRelease : LPUNKNOWN
end
typedef STGMEDIUM = local LPSTGMEDIUM
//[c]
struct IEnumFORMATETC Vtbl
        
	QueryInterface : {THIS, REFIID, [] PVOID} HRESULT
	AddRef : {THIS} ULONG
	Release : {THIS} ULONG
	Next : {THIS, ULONG, LPFORMATETC, ULONG} HRESULT
	Skip : {THIS, ULONG} HRESULT
	Reset : {THIS} HRESULT
	Clone : {THIS, IEnumFORMATETC} HRESULT

end

struct IEnumFORMATETC
	lpVtbl : IEnumFORMATETC Vtbl
end
typedef LPENUMFORMATETC = IEnumFORMATETC
//[c]
//[c]
import def [name="c"] IID_IDataObject : IID

struct IDataObject Vtbl

	QueryInterface : {THIS, REFIID, [] PVOID} HRESULT
	AddRef : {THIS} ULONG
	Release : {THIS} ULONG

	GetData : {THIS, LPFORMATETC, LPSTGMEDIUM} HRESULT
	GetDataHere : {THIS, LPFORMATETC, LPSTGMEDIUM} HRESULT
	QueryGetData : {THIS, LPFORMATETC} HRESULT
	GetCanonicalFormatEtc : {THIS, LPFORMATETC, LPFORMATETC} HRESULT
	SetData : {THIS, LPFORMATETC, LPSTGMEDIUM, BOOL} HRESULT
	EnumFormatEtc : {THIS, DWORD, [] IEnumFORMATETC} HRESULT
end

struct IDataObject
	lpVtbl : IDataObject Vtbl
end

typedef LPDATAOBJECT = IDataObject
//[cf]
//[c]
//[c]
equ DROPEFFECT_NONE = 0
equ DROPEFFECT_COPY = 1
equ DROPEFFECT_MOVE = 2
equ DROPEFFECT_LINK = 4

import def [name="c"] IID_IDropTarget : IID

struct IDropTarget Vtbl

	QueryInterface : {THIS, REFIID, [] PVOID} HRESULT
	AddRef : {THIS} ULONG
	Release : {THIS} ULONG
	DragEnter : {THIS, LPDATAOBJECT, DWORD, LONG, LONG, [] DWORD} HRESULT
	DragOver : {THIS, DWORD, LONG, LONG, [] DWORD} HRESULT
	DragLeave : {THIS} HRESULT
	Drop : {THIS, LPDATAOBJECT, DWORD, LONG, LONG, [] DWORD} HRESULT

end

struct IDropTarget

	lpVtbl : IDropTarget Vtbl

end

typedef LPDROPTARGET = IDropTarget
//[c]
end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -