/// <summary> /// 获取媒体状态描述 /// </summary> /// <returns></returns> public static string GetMediaStateName(IMAPI_FORMAT2_DATA_MEDIA_STATE mediaState) { string mediaStateName = "unknown"; switch (mediaState) { case IMAPI_FORMAT2_DATA_MEDIA_STATE.IMAPI_FORMAT2_DATA_MEDIA_STATE_APPENDABLE: mediaStateName = "Appendable"; break; case IMAPI_FORMAT2_DATA_MEDIA_STATE.IMAPI_FORMAT2_DATA_MEDIA_STATE_BLANK: mediaStateName = "Blank"; break; case IMAPI_FORMAT2_DATA_MEDIA_STATE.IMAPI_FORMAT2_DATA_MEDIA_STATE_DAMAGED: mediaStateName = "Damaged"; break; case IMAPI_FORMAT2_DATA_MEDIA_STATE.IMAPI_FORMAT2_DATA_MEDIA_STATE_ERASE_REQUIRED: break; case IMAPI_FORMAT2_DATA_MEDIA_STATE.IMAPI_FORMAT2_DATA_MEDIA_STATE_FINALIZED: break; case IMAPI_FORMAT2_DATA_MEDIA_STATE.IMAPI_FORMAT2_DATA_MEDIA_STATE_FINAL_SESSION: mediaStateName = "Media is in final writing session."; break; case IMAPI_FORMAT2_DATA_MEDIA_STATE.IMAPI_FORMAT2_DATA_MEDIA_STATE_INFORMATIONAL_MASK: break; case IMAPI_FORMAT2_DATA_MEDIA_STATE.IMAPI_FORMAT2_DATA_MEDIA_STATE_NON_EMPTY_SESSION: break; case IMAPI_FORMAT2_DATA_MEDIA_STATE.IMAPI_FORMAT2_DATA_MEDIA_STATE_OVERWRITE_ONLY: mediaStateName = "Currently, only overwriting is supported."; break; case IMAPI_FORMAT2_DATA_MEDIA_STATE.IMAPI_FORMAT2_DATA_MEDIA_STATE_UNKNOWN: mediaStateName = "Media state is unknown."; break; case IMAPI_FORMAT2_DATA_MEDIA_STATE.IMAPI_FORMAT2_DATA_MEDIA_STATE_UNSUPPORTED_MASK: break; case IMAPI_FORMAT2_DATA_MEDIA_STATE.IMAPI_FORMAT2_DATA_MEDIA_STATE_UNSUPPORTED_MEDIA: break; case IMAPI_FORMAT2_DATA_MEDIA_STATE.IMAPI_FORMAT2_DATA_MEDIA_STATE_WRITE_PROTECTED: break; default: break; } return(mediaStateName); }
/// <summary> /// Displays the string of the specified IMAPI_FORMAT2_DATA_MEDIA_STATE. /// </summary> /// <param name="mediaStatus">The IMAPI_FORMAT2_DATA_MEDIA_STATE to display.</param> /// <returns>The media status text.</returns> public string MediaStatus(IMAPI_FORMAT2_DATA_MEDIA_STATE mediaStatus) { switch (mediaStatus) { case IMAPI_FORMAT2_DATA_MEDIA_STATE.IMAPI_FORMAT2_DATA_MEDIA_STATE_OVERWRITE_ONLY: return("Currently, only overwriting is supported."); case IMAPI_FORMAT2_DATA_MEDIA_STATE.IMAPI_FORMAT2_DATA_MEDIA_STATE_APPENDABLE: return("Media is currently appendable."); case IMAPI_FORMAT2_DATA_MEDIA_STATE.IMAPI_FORMAT2_DATA_MEDIA_STATE_FINAL_SESSION: return("Media is in final writing session."); case IMAPI_FORMAT2_DATA_MEDIA_STATE.IMAPI_FORMAT2_DATA_MEDIA_STATE_DAMAGED: return("Media is damaged."); case IMAPI_FORMAT2_DATA_MEDIA_STATE.IMAPI_FORMAT2_DATA_MEDIA_STATE_UNKNOWN: default: return("Media state is unknown."); } }
/// <summary> /// 获取媒体是否可刻录 /// 实际使用中,值可能为6.直接刻录可行.不支持追加数据. /// 所以未列出的值,可以尝试刻录.刻录时,出异常了再说 /// 刻坏了,换张盘๑乛◡乛๑ /// </summary> /// <returns></returns> public static bool GetMediaBurnAble(IMAPI_FORMAT2_DATA_MEDIA_STATE mediaState) { bool burnAblue = true; switch (mediaState) { case IMAPI_FORMAT2_DATA_MEDIA_STATE.IMAPI_FORMAT2_DATA_MEDIA_STATE_APPENDABLE: burnAblue = false; break; case IMAPI_FORMAT2_DATA_MEDIA_STATE.IMAPI_FORMAT2_DATA_MEDIA_STATE_BLANK: burnAblue = true; break; case IMAPI_FORMAT2_DATA_MEDIA_STATE.IMAPI_FORMAT2_DATA_MEDIA_STATE_DAMAGED: burnAblue = false; break; case IMAPI_FORMAT2_DATA_MEDIA_STATE.IMAPI_FORMAT2_DATA_MEDIA_STATE_ERASE_REQUIRED: burnAblue = false; break; case IMAPI_FORMAT2_DATA_MEDIA_STATE.IMAPI_FORMAT2_DATA_MEDIA_STATE_FINALIZED: burnAblue = false; break; case IMAPI_FORMAT2_DATA_MEDIA_STATE.IMAPI_FORMAT2_DATA_MEDIA_STATE_FINAL_SESSION: burnAblue = false; break; case IMAPI_FORMAT2_DATA_MEDIA_STATE.IMAPI_FORMAT2_DATA_MEDIA_STATE_INFORMATIONAL_MASK: burnAblue = false; break; case IMAPI_FORMAT2_DATA_MEDIA_STATE.IMAPI_FORMAT2_DATA_MEDIA_STATE_NON_EMPTY_SESSION: burnAblue = false; break; case IMAPI_FORMAT2_DATA_MEDIA_STATE.IMAPI_FORMAT2_DATA_MEDIA_STATE_OVERWRITE_ONLY: burnAblue = false; break; case IMAPI_FORMAT2_DATA_MEDIA_STATE.IMAPI_FORMAT2_DATA_MEDIA_STATE_UNKNOWN: burnAblue = false; break; case IMAPI_FORMAT2_DATA_MEDIA_STATE.IMAPI_FORMAT2_DATA_MEDIA_STATE_UNSUPPORTED_MASK: burnAblue = false; break; case IMAPI_FORMAT2_DATA_MEDIA_STATE.IMAPI_FORMAT2_DATA_MEDIA_STATE_UNSUPPORTED_MEDIA: burnAblue = false; break; case IMAPI_FORMAT2_DATA_MEDIA_STATE.IMAPI_FORMAT2_DATA_MEDIA_STATE_WRITE_PROTECTED: burnAblue = false; break; default: break; } return(burnAblue); }