从 CD 或 DVD 读取属性值
在整个本主题中,已使用以下方式定义 Player 对象:
AxWMPLib.AxWindowsMediaPlayer Player;
using WMPLib;
以下 C# 示例代码检索驱动器中当前光盘中所有属性的值,并将其写入文件。
private void logDiscAttributes()
{
int iCDCount = 0; // Count of CD and DVD drives
int iAttrCount = 0; // Attribute count.
int iPLCount = 0; // Playlist item count.
IWMPCdromCollection cdCollection;
IWMPPlaylist playlist;
IWMPMedia media;
string strAttribName = "";
string strAttribValue = "";
string strText = "";
// Create a StreamWriter object to write
// the output to a file.
StreamWriter sw = new StreamWriter(strOutFile, true);
cdCollection = Player.cdromCollection;
iCDCount = cdCollection.count;
// Loop through the CD and DVD drives.
for (int i = 0; i < iCDCount; i++)
{
playlist = cdCollection.Item(i).Playlist;
// Loop through the playlist attributes.
iAttrCount = playlist.attributeCount;
for (int j = 0; j < iAttrCount; j++)
{
strText += "Playlist Attribute: \t";
strAttribName = playlist.get_attributeName(j);
strText += "\t" + strAttribName + "\t";
strAttribValue = playlist.getItemInfo(strAttribName);
strText += strAttribValue + "\n";
}
// Loop through the playlist.
iPLCount = playlist.count;
for (int k = 0; k < iPLCount; k++)
{
media = playlist.get_Item(k);
// Loop through the media attributes.
iAttrCount = media.attributeCount;
for (int m = 0; m < iAttrCount; m++)
{
strText += "Track or Chapter [" + m.ToString() + "]";
strAttribName = media.getAttributeName(m);
strText += "\t" + strAttribName + "\t";
strText += "Read Only: " + media.isReadOnlyItem(strAttribName) + "\t";
strAttribValue = media.getItemInfo(strAttribName);
strText += strAttribValue + "\n";
}
}
}
sw.Write(strText);
sw.Close();
MessageBox.Show(strOutFile + " created");
}
相关主题