各位会VC的老大来帮忙看一下,把下面几个声明转成delphi的typedef struct _TSCOCK_FILE {
    DWORD dwRefCount;
     HMODULE hscock;
     LPWSTR Colors;
     LPWSTR Sizes;
     LPWSTR Size;
} TSCOCK_FILE, *PTSCOCK_FILE;typedef struct _INI_FILE {
    LPCWSTR lpIni;
    LPCWSTR lpCurLoc;
    LPCWSTR lpEnd;
} UXINI_FILE, *PINI_FILE;HRESULT MSCOCK_OpenScockFile(LPCWSTR lpscockFile, LPCWSTR ColorName, LPCWSTR SizeName, PTSCOCK_FILE *tf);
void MSCOCK_CloseScockFile(PTSCOCK_FILE tf);
HRESULT MSCOCK_SetActiveScock(PTSCOCK_FILE tf);

解决方案 »

  1.   

    typedef struct _TSCOCK_FILE {
        DWORD dwRefCount;
         HMODULE hscock;
         LPWSTR Colors;
         LPWSTR Sizes;
         LPWSTR Size;
    } TSCOCK_FILE, *PTSCOCK_FILE;type _TSCOCK_FILE = record // packed record
      dwRefCount: DWORD;
      hscock:     HWDN;   // or THandle
      Colors:     LPWSTR;
      Sizes:      LPWSTR;
       Size:      LPWSTR;
    end;
    TSCOCK_FILE  = _TSCOCK_FILE;
    PTSCOCK_FILE = ^_TSCOCK_FILE;下面一个同样 自己转了。
      

  2.   

    接上面:
    PPTSCOCK_FILE = ^PTSCOCK_FILE;HRESULT MSCOCK_OpenScockFile(LPCWSTR lpscockFile, LPCWSTR ColorName, LPCWSTR SizeName, PTSCOCK_FILE *tf);
    //
    function MSCOCK_OpenScockFile(lpscockFile:LPCWSTR; ColorName:LPCWSTR; SizeName:LPCWSTR;
    tf: PPTSCOCK_FILE)):LRESULT; // 这是一个二级指针...void MSCOCK_CloseScockFile(PTSCOCK_FILE tf);
    // 
    procedure MSCOCK_CloseScockFile(tf: PTSCOCK_FILE );
    HRESULT MSCOCK_SetActiveScock(PTSCOCK_FILE tf);
    //
    fucntion MSCOCK_SetActiveScock(tf: PTSCOCK_FILE):LRESULT; 是DLL么 那么可能再后面+ stdcall