求大神帮我把以下代码转换成C#代码可以吗?

#include
#include
#include
#include"dhnetsdk.h"
using namespace std;

#pragmacomment( lib, "dhnetsdk.lib")

//////////////////////////////////////////////////////////////////////////

void __stdcall DisConnectFunc(LLONG lLoginID, char *pchDVRIP, LONG nDVRPort, LDWORD dwUser)
{
printf("Device disconn, IP=%s+++++++++++++++++++++++\n", pchDVRIP);
}

BOOL __stdcall MessCallBack(LONG lCommand, LLONG lLoginID, char *pBuf, DWORD dwBufLen, char *pchDVRIP, LONG nDVRPort, LDWORD dwUser)
{
switch(lCommand)
{

switch(lCommand)
{
case DH_ALARM_ALARM_EX: //0x2101 //External alarm
{
alarmAlarm.m_AlarmCommand = DH_ALARM_ALARMEX;
memcpy(&alarmAlarm.m_dwAlarm,pBuf,min(dwBufLen, sizeof(alarmAlarm.m_dwAlarm)));
bRet = TRUE;
}
break;
case DH_MOTION_ALARM_EX: // 0x2102 //Motion detection alarm
{
alarmAlarm.m_AlarmCommand = DH_MOTIONDETECT_ALARMEX;
memcpy(&alarmAlarm.m_dwAlarm,pBuf,min(dwBufLen, sizeof(alarmAlarm.m_dwAlarm)));

            bRet = TRUE;
        }
        break;
    case DH_VIDEOLOST_ALARM_EX:     //0x2103    //Video loss alarm 
        {
            alarmAlarm.m_AlarmCommand = DH_VEDIOSHELTER_ALARMEX;
            memcpy(&alarmAlarm.m_dwAlarm,pBuf,min(dwBufLen, sizeof(alarmAlarm.m_dwAlarm)));
            bRet = TRUE;
        }
        break;
    case DH_SHELTER_ALARM_EX:       //  0x2104  //Camera masking alarm 
        {
            alarmAlarm.m_AlarmCommand = DH_SHELTER_ALARMEX;
            memcpy(&alarmAlarm.m_dwAlarm,pBuf,min(dwBufLen, sizeof(alarmAlarm.m_dwAlarm)));
            bRet = TRUE;
        }
        break;
    case DH_SOUND_DETECT_ALARM_EX:  //0x2105    //Audio detection alarm 
        {
            alarmAlarm.m_AlarmCommand = DH_SOUNDDETECT_ALARMEX;
            memcpy(&alarmAlarm.m_stuNewSound,pBuf,min(dwBufLen, sizeof(alarmAlarm.m_stuNewSound)));
            bRet = TRUE;
        }
        break;
    default:
        break;
    }
}

if (bRet)
{
    m_ListAlarmInfoEx.AddTail(alarmAlarm);
}

return TRUE;

}
int main(int argc, char* argv[])
{
CLIENT_Init(DisConnectFunc, 0);
cout<<"Initialize client SDK done;"<<endl;

//设置报警回调函数
CLIENT_SetDVRMessCallBack(MessCallBack, (DWORD)0);

char szDevIp[64] = {0};
NET_DEVICEINFO stDevInfo = {0};
int nError = 0;
LLONG lLoginHandle = 0;
int nPort = 37777;
int nChannelID = 0; // 通道号

cout<<endl<<"IP:";
cin>>szDevIp;
cout<<endl<<"Port:";
cin>>nPort;


lLoginHandle = CLIENT_Login(szDevIp, nPort, "admin", "admin", &stDevInfo, &nError);
if (lLoginHandle != 0)
{
    BOOL bRet = FALSE;

    bRet = CLIENT_StartListenEx(lLoginHandle);
    if (bRet == FALSE)
    {
        printf("StartListenEx failed, error, %d\n", CLIENT_GetLastError());
        goto_out;
    }

    Sleep(5000);

    // 停止侦听
    CLIENT_StopListen(lLoginHandle);
}
else
{
    printf("CLIENT_LoginEx: %s failed! error = %d\n", szDevIp, nError);
}

_out:

//注销用户
CLIENT_Logout(lLoginHandle);

//释放SDK资源
CLIENT_Cleanup();
return 0;

}
求大神帮我转换成C#代码可以吗? 谢谢。

网上找个免费的转换工具试试。