private void LogsBackupCompleteCallback(LogsBackupRemoteOperate operate, LogsBackupRemoteState state) { DemoTrace.WriteLine(string.Format("operate :{0} progress{1}", operate.ToString(), state)); }
private static void ExportLogsBackupCompleteCallback(LogsBackupRemoteOperate operate, LogsBackupRemoteState state, IntPtr user_data) { NIMLogsBackupExportInfo export_info = (NIMLogsBackupExportInfo)Marshal.PtrToStructure(user_data, typeof(NIMLogsBackupExportInfo)); if (export_info != null && export_info.CompleteCallback_ != null) { export_info.CompleteCallback_(operate, state); } //注意,这里应释放user_data Marshal.FreeHGlobal(user_data); }