/// <summary> /// 获取激活文件信息 /// </summary> /// <param name="activeFileInfo">激活文件信息</param> /// <returns>返回0表示正常;返回负数请根据ErrorCodeUtil类注释查看;其他值请在官网-帮助中心查询</returns> public int ASFGetActiveFileInfo(out ActiveFileInfo activeFileInfo) { activeFileInfo = new ActiveFileInfo(); IntPtr pASFActiveFileInfo = MemoryUtil.Malloc(MemoryUtil.SizeOf <ASF_ActiveFileInfo>()); //调用SDK接口 int retCode = ASFFunctions.ASFGetActiveFileInfo(pASFActiveFileInfo); if (retCode != 0) { MemoryUtil.Free(pASFActiveFileInfo); return(retCode); } //转化结果 ASF_ActiveFileInfo asfActiveFileInfo = MemoryUtil.PtrToStructure <ASF_ActiveFileInfo>(pASFActiveFileInfo); activeFileInfo.startTime = Marshal.PtrToStringAnsi(asfActiveFileInfo.startTime); activeFileInfo.endTime = Marshal.PtrToStringAnsi(asfActiveFileInfo.endTime); activeFileInfo.platform = Marshal.PtrToStringAnsi(asfActiveFileInfo.platform); activeFileInfo.sdkType = Marshal.PtrToStringAnsi(asfActiveFileInfo.sdkType); activeFileInfo.appId = Marshal.PtrToStringAnsi(asfActiveFileInfo.appId); activeFileInfo.sdkKey = Marshal.PtrToStringAnsi(asfActiveFileInfo.sdkKey); activeFileInfo.sdkVersion = Marshal.PtrToStringAnsi(asfActiveFileInfo.sdkVersion); activeFileInfo.fileVersion = Marshal.PtrToStringAnsi(asfActiveFileInfo.fileVersion); MemoryUtil.Free(pASFActiveFileInfo); return(retCode); }