Forum Discussion
MSIX -> Local Activation permission for COM
I followed through what you advised but to no avail.
1. I altered the AppxManifest.xml (format and namespace its a bit different, it has been serialized by a CI tool) as
<?xml version="1.0" encoding="utf-8"?>
<Package xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10">
<Identity Name="WeatherHistory" Version="0.7.0.2" Publisher="CN=Contoso Software, O=Contoso Corporation, C=US" />
<Properties>
<DisplayName>Weather History</DisplayName>
<PublisherDisplayName>Cosmic ray</PublisherDisplayName>
<Logo>Images/satelite.png</Logo>
</Properties>
<Dependencies>
<TargetDeviceFamily Name="Windows.Universal" MinVersion="10.0.17763.0" MaxVersionTested="10.0.18363.0" />
<TargetDeviceFamily Name="Windows.Desktop" MinVersion="10.0.17763.0" MaxVersionTested="10.0.18363.0" />
</Dependencies>
<Resources>
<Resource Language="en-us" />
</Resources>
<Applications>
<Application Id="Weather.History" Executable="Weather.History.Splash.exe" EntryPoint="Weather.History.Splash">
<VisualElements DisplayName="Weather History" Description="Frontend" Square150x150Logo="Images/satelite.png" Square44x44Logo="Images/satelite.png" BackgroundColor="yellow" xmlns="http://schemas.microsoft.com/appx/manifest/uap/windows10" />
<Extensions>
<Extension Category="windows.fullTrustProcess" Executable="Weather.History.Stylet.exe" xmlns="http://schemas.microsoft.com/appx/manifest/desktop/windows10" />
</Extensions>
</Application>
</Applications>
<Capabilities>
<Capability Name="runFullTrust" xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities" />
<Capability Name="internetClient" />
</Capabilities>
</Package>
2. Added code to the bootstrapper ap as *Splash.exe as
private async void LaunchProduct()
{
try
{
if (ApiInformation.IsApiContractPresent("Windows.ApplicationModel.FullTrustAppContract", 1, 0))
{
await FullTrustProcessLauncher.LaunchFullTrustProcessForCurrentAppAsync();
}
else
{
Exit($"Your Windows version is not supported.");
}
}
catch (Exception e)
{
Exit("Failed to launch Weather History", e);
}
}
I witness the same errors in the Event Viewer as earler. For some reason the Splash.exe is not even starting, hence it has no chance to launch the proc I specified as fullTrustProcess.
None of these are UWP. WPF. I referenced further assemblies as:
- C:\Program Files (x86)\Windows Kits\10\UnionMetadata\10.0.18362.0\Windows.winmd
- C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETCore\v4.5\System.Runtime.WindowsRuntime.dll
The package itself has already the capabilities you advised to include:
Sigmarsson I am unable to help you further; you probably need to take this to a forum with more developers with similar experience. It sounds like you are pushing the edge to integrate old and new code into an MSIX package, and whether there is a procedural issue or (current) incompatibility I don't know.
I'm not sure that DCOM has anything to do with the issue; I'm guessing that it is a secondary issue. So going back to the beginning with code samples like this is more likely to help with someone more familiar with what you are attempting.
- SigmarssonJul 20, 2020Brass ContributorShould I send you log details about the process starting up made by procmon.exe, would you be able to narrow it down ?
- Jul 20, 2020
Sigmarsson I really don't think that will help. I believe the package structure is at issue. Perhaps StackOverflow might get you someone that can help.
- SigmarssonJul 20, 2020Brass Contributor
- SigmarssonJul 19, 2020Brass Contributor
Hello Sir,
What exactly do you mean by old and new code, which I intend to push to the limits inside the MSIX box ?
This must be feasible somehow. There is a WPF splash attempts to launch another WPF both are based on the common TFM .NET 4.7. The first WPF ought to launch the second as a trusted process harnessing this MSIX package extension infrastructure. Pro boostrapper mechanism. If my take on is right.
I believe it is the right way to keep going what you prompted but either it is even now yet missing a puzzle or ... I do not know.
What discussion board do I ought to swing over ?
This ain't a pacage bundle, so what architecture is my package actually targeting ? I always compile Any CPU.
Is there a checklist I could go through to ensure compatibility ? Actually what you are suspecting.