我正在编写一个小的 C Sharp 程序来使用 iTunes Windows COM api 与 iTunes 交互。我的程序必须在 iTunes 启动之前和 iTunes 关闭之后运行。我希望它使用 OnQuittingEvent 检测 iTunes 何时关闭。
private void itunes_OnQuittingEvent()
{
// Remove any handlers from the iTunes COM object.
app.OnPlayerPlayEvent -= itunes_OnPlayerPlayEvent;
app.OnQuittingEvent -= itunes_OnQuittingEvent;
bniTunesRunning = false;
// Release the COM object.
app = null;
Console.WriteLine("iTunes Closing!");
}
但是,随着我的 c sharp 程序运行,当我关闭 iTunes 时,我收到一条警告消息:“一个或多个应用程序正在使用 iTunes 脚本界面”,然后在 iTunes 关闭前倒计时 20 秒。
我的问题:我可以使用 iTunes Windows COM OnQuittingEvent 事件处理程序在我关闭 iTunes 应用程序时在我的 C 语言代码中取消实例化 iTunesApp 对象引用,因此屏幕上不会出现该警告消息吗?有没有办法完全抑制该警告信息?
这里提出了一个类似的问题:关闭应用程序时如何抑制“此应用程序中仍有活动的 COM 对象”错误?但代码是 C++ 而不是 C Sharp。
谢谢你。