public unsafe int test(IntPtr phBmp){
     if (IntPtr.Size = 4)    {        int* pBuffer = (int*)phBmp.ToPointer();        *pBuffer = hBmp.ToInt32(); 
        phBmp = new IntPtr((void*)pBuffer);    }    else // 8-bytes, or 64-bit    {         long* pBuffer = (long*)phBmp.ToPointer();        *pBuffer = hBmp.ToInt64();        phBmp = new IntPtr((void*)pBuffer);    }     return NOERROR;}