代理运行时组件:'windows.activatableClass.inProcessServer' 根据其数据类型无效
Brokered Runtime Component: 'windows.activatableClass.inProcessServer' is invalid according to its datatype
我正在尝试创建一个 Brokered Windows Runtime Component 来使用我的 UWP
应用程序。
我已经能够构建我的代理组件和代理,创建 winmd 文件,并在我的 UWP
应用程序中引用代理。但是,在编辑 UWP
应用程序的应用程序清单以将代理作为扩展包含在内时,我遇到了以下问题:
The 'Category' attribute is invalid - The value windows.activatableClass.inProcessServer
is invalid according to its datatype 'http://schemas.microsoft.com/appx/manifest/types:ST_ApplicationExtensionCategory_Foundation' - The Enumeration constraint failed.
这是我尝试在应用程序清单中使用的 XAML 代码:
<Extensions>
...
<Extension Category="windows.activatableClass.inProcessServer">
<InProcessServer>
<Path>clrhost.dll</Path>
<ActivatableClass ActivatableClassId="BrokeredTasks.Utilities"
ThreadingModel="both">
<ActivatableClassAttribute
Name="DesktopApplicationPath"
Type="string"
Value="C:\Users\MyUserName\Documents\Visual Studio 2015\Projects\MyProject\Debug\BrokeredTasksProxyStub"/>
</ActivatableClass>
</InProcessServer>
</Extension>
</Extensions>
P.S.
找到了关于使用代理运行时组件和模板的稍微更具可读性的说明here (see Step 9), but this tutorial 是我找到的关于代理 RT 组件的最佳整体指南。
这里的问题是,作为一个没有手动编辑应用程序清单经验的人,我感到困惑 Application/Extensions/Extension
with Package/Extensions/Extension
。
inProcessServer
不是应用程序 Extension
的类别,而是包 Extension
.
因此
<Package>
...
<Application ... >
<Extensions>
<!-- Application Extensions here -->
<Extensions>
</Application>
<Extensions>
<Extension Category="windows.activatableClass.inProcessServer">
...
</Extension>
</Extensions>
</Package>
我正在尝试创建一个 Brokered Windows Runtime Component 来使用我的 UWP
应用程序。
我已经能够构建我的代理组件和代理,创建 winmd 文件,并在我的 UWP
应用程序中引用代理。但是,在编辑 UWP
应用程序的应用程序清单以将代理作为扩展包含在内时,我遇到了以下问题:
The 'Category' attribute is invalid - The value
windows.activatableClass.inProcessServer
is invalid according to its datatype 'http://schemas.microsoft.com/appx/manifest/types:ST_ApplicationExtensionCategory_Foundation' - The Enumeration constraint failed.
这是我尝试在应用程序清单中使用的 XAML 代码:
<Extensions>
...
<Extension Category="windows.activatableClass.inProcessServer">
<InProcessServer>
<Path>clrhost.dll</Path>
<ActivatableClass ActivatableClassId="BrokeredTasks.Utilities"
ThreadingModel="both">
<ActivatableClassAttribute
Name="DesktopApplicationPath"
Type="string"
Value="C:\Users\MyUserName\Documents\Visual Studio 2015\Projects\MyProject\Debug\BrokeredTasksProxyStub"/>
</ActivatableClass>
</InProcessServer>
</Extension>
</Extensions>
P.S.
找到了关于使用代理运行时组件和模板的稍微更具可读性的说明here (see Step 9), but this tutorial 是我找到的关于代理 RT 组件的最佳整体指南。
这里的问题是,作为一个没有手动编辑应用程序清单经验的人,我感到困惑 Application/Extensions/Extension
with Package/Extensions/Extension
。
inProcessServer
不是应用程序 Extension
的类别,而是包 Extension
.
因此
<Package>
...
<Application ... >
<Extensions>
<!-- Application Extensions here -->
<Extensions>
</Application>
<Extensions>
<Extension Category="windows.activatableClass.inProcessServer">
...
</Extension>
</Extensions>
</Package>