我已经添加了一个自定义带和瓷砖到Windows媒体中心。 然而,当我select瓷砖,然后我select的应用程序( notepad.exe
)不会启动,我得到以下错误:
[名称]程序已停止响应,您将返回到Windows媒体中心。
我需要在XML中更改什么,以便启动notepad.exe
而不是显示此错误消息?
使用本博客文章和Windows开发人员中心本页提供的示例,我创build了以下XML文件(称为dummy.xml
):
<application title="appTitle" id="{81E3517C-A5F3-4afa-9E37-81BF9A6A99FE}"> <entrypoint id="{760A3CF3-6675-444b-AA31-B2A3F94AD9A3}" addin="Microsoft.MediaCenter.Hosting.WebAddIn,Microsoft.MediaCenter" title="entrypointTitle" description="Description" run="notepad.exe"> <category category="MyCompany\MyApplication1"/> </entrypoint> </application>
和以下registry文件(称为dummy.reg
):
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Media Center\Start Menu\Applications\{81E3517C-A5F3-4afa-9E37-81BF9A6A99FE}] "Title"="appTitle" "Category"="MyCompany\\MyApplication1" "OnStartMenu"="True" "TimeStamp"=dword:0c7e59de
然后我使用以下命令安装它们:
%windir%\ehome\registermceapp.exe dummy.xml regedit.exe /s dummy.reg
当我运行Windows媒体中心,然后我可以看到地带和瓷砖 – 但是当我select瓷砖,然后我得到一个错误消息:
根据这个页面 , entrypoint
元素的属性run
是:
指定本地计算机上可执行文件的完整path或相对path的string。
我需要做什么不同的XML文件和registry项来运行notepad.exe
,而不是显示错误消息?
问题结果是双重的:
RegisterMceApp.exe
报告“成功”。 在这个页面上记录了entrypoint
元素,它很清楚地说明:
<entrypoint id="entry point GUID" <!-- This element can have only one of the following attributes: addin="AssemblyInfo" url="URL of entry-point page" run="path of EXE file" -->
我的XML文件同时使用addin
和run
,这就是为什么它没有工作。
下面的修正版本(与原始注册表文件相结合)将导致从Windows Media Center中选择切片时启动notepad.exe
:
<application title="appTitle" id="{81E3517C-A5F3-4afa-9E37-81BF9A6A99FE}"> <entrypoint id="{760A3CF3-6675-444b-AA31-B2A3F94AD9A3}" run="notepad.exe" title="entrypointTitle" description="Description"> <category category="MyCompany\MyApplication1"/> </entrypoint> </application>