myrtille icon indicating copy to clipboard operation
myrtille copied to clipboard

Failed to install on Windows 11 Pro

Open jorbig opened this issue 3 years ago • 4 comments

I had Myrtille running fine on Windows 10 before, but I can't install it on my Windows 11 machine. The installer gets interrupted with this error:

Failed to install Myrtille.Web (System.Exception: An error occured while running C:\Program Files (x86)\Myrtille\Myrtille.Web.Install.ps1. See C:\Program Files (x86)\Myrtille\log\Myrtille.Web.Install.log for more information.

The last lines of Myrtille.Web.Install.log say:

Created Myrtille self-signed certificate
Created https binding on default web site
You cannot call a method on a null-valued expression.

What's the problem here and how to fix this?

jorbig avatar Feb 19 '22 13:02 jorbig

Thank you for your return with Myrtille under Windows 11. I still have to test Myrtille on it.

This looks like a problem with attaching the self-signed SSL certificate to the https binding:/ what you can do is uncheck the SSL certificate installation in the installer (and optionally create / attach an SSL certificate manually afterward, using the IIS management console).

cedrozor avatar Feb 20 '22 13:02 cedrozor

You're right, that fixed it! I got it installed now, but nothing happens when I try to connect to an RDP host. Don't know if this could be Windows 11 related.

jorbig avatar Feb 21 '22 06:02 jorbig

Is there something relevant into the logs?

cedrozor avatar Feb 21 '22 13:02 cedrozor

Yes, Myrtille.Web.log throws some errors:

2022-02-21 14:43:21,492 [36] ERROR System.Diagnostics redirection [(null)] - Failed to retrieve the active remote session (System.NullReferenceException: Object reference not set to an instance of an object.
   at Myrtille.Web.SendInputs.Page_Load(Object sender, EventArgs e))
2022-02-21 14:43:57,265 [53] ERROR System.Diagnostics redirection [(null)] - Failed to retrieve service process identity, remote session 1d301cd0-d2c0-4d43-8db3-ec403280ea77 (System.ServiceModel.AddressAccessDeniedException: HTTP could not register URL http://+:80/Temporary_Listen_Addresses/6f75e9ce-83ca-47b1-9a67-20805b926421/. Your process does not have access rights to this namespace (see http://go.microsoft.com/fwlink/?LinkId=70353 for details). ---> System.Net.HttpListenerException: Access is denied
   at System.Net.HttpListener.AddAllPrefixes()
   at System.Net.HttpListener.Start()
   at System.ServiceModel.Channels.SharedHttpTransportManager.OnOpen()
   --- End of inner exception stack trace ---
   at System.ServiceModel.Channels.SharedHttpTransportManager.OnOpen()
   at System.ServiceModel.Channels.TransportManager.Open(TransportChannelListener channelListener)
   at System.ServiceModel.Channels.TransportManagerContainer.Open(SelectTransportManagersCallback selectTransportManagerCallback)
   at System.ServiceModel.Channels.TransportChannelListener.OnOpen(TimeSpan timeout)
   at System.ServiceModel.Channels.HttpChannelListener`1.OnOpen(TimeSpan timeout)
   at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
   at System.ServiceModel.Channels.LayeredChannelListener`1.OnOpen(TimeSpan timeout)
   at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
   at System.ServiceModel.Channels.DatagramChannelDemuxer`2.OnOuterListenerOpen(ChannelDemuxerFilter filter, IChannelListener listener, TimeSpan timeout)
   at System.ServiceModel.Channels.SingletonChannelListener`3.OnOpen(TimeSpan timeout)
   at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
   at System.ServiceModel.Channels.InternalDuplexChannelFactory.OnOpen(TimeSpan timeout)
   at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
   at System.ServiceModel.Channels.ReliableChannelFactory`2.OnOpen(TimeSpan timeout)
   at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
   at System.ServiceModel.Channels.ServiceChannelFactory.TypedServiceChannelFactory`1.OnOpen(TimeSpan timeout)
   at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
   at System.ServiceModel.ChannelFactory.OnOpen(TimeSpan timeout)
   at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
   at System.ServiceModel.ChannelFactory.EnsureOpened()
   at System.ServiceModel.DuplexChannelFactory`1.CreateChannel(InstanceContext callbackInstance, EndpointAddress address, Uri via)
   at System.ServiceModel.ClientBase`1.CreateChannel()
   at System.ServiceModel.ClientBase`1.CreateChannelInternal()
   at System.ServiceModel.ClientBase`1.get_Channel()
   at Myrtille.Web.RemoteSessionProcessClient.GetProcessIdentity())
2022-02-21 14:43:57,267 [53] ERROR System.Diagnostics redirection [(null)] - Failed to create pipes, remote session 1d301cd0-d2c0-4d43-8db3-ec403280ea77 (System.ServiceModel.AddressAccessDeniedException: HTTP could not register URL http://+:80/Temporary_Listen_Addresses/6f75e9ce-83ca-47b1-9a67-20805b926421/. Your process does not have access rights to this namespace (see http://go.microsoft.com/fwlink/?LinkId=70353 for details). ---> System.Net.HttpListenerException: Access is denied
   at System.Net.HttpListener.AddAllPrefixes()
   at System.Net.HttpListener.Start()
   at System.ServiceModel.Channels.SharedHttpTransportManager.OnOpen()
   --- End of inner exception stack trace ---
   at System.ServiceModel.Channels.SharedHttpTransportManager.OnOpen()
   at System.ServiceModel.Channels.TransportManager.Open(TransportChannelListener channelListener)
   at System.ServiceModel.Channels.TransportManagerContainer.Open(SelectTransportManagersCallback selectTransportManagerCallback)
   at System.ServiceModel.Channels.TransportChannelListener.OnOpen(TimeSpan timeout)
   at System.ServiceModel.Channels.HttpChannelListener`1.OnOpen(TimeSpan timeout)
   at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
   at System.ServiceModel.Channels.LayeredChannelListener`1.OnOpen(TimeSpan timeout)
   at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
   at System.ServiceModel.Channels.DatagramChannelDemuxer`2.OnOuterListenerOpen(ChannelDemuxerFilter filter, IChannelListener listener, TimeSpan timeout)
   at System.ServiceModel.Channels.SingletonChannelListener`3.OnOpen(TimeSpan timeout)
   at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
   at System.ServiceModel.Channels.InternalDuplexChannelFactory.OnOpen(TimeSpan timeout)
   at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
   at System.ServiceModel.Channels.ReliableChannelFactory`2.OnOpen(TimeSpan timeout)
   at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
   at System.ServiceModel.Channels.ServiceChannelFactory.TypedServiceChannelFactory`1.OnOpen(TimeSpan timeout)
   at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
   at System.ServiceModel.ChannelFactory.OnOpen(TimeSpan timeout)
   at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
   at System.ServiceModel.ChannelFactory.EnsureOpened()
   at System.ServiceModel.DuplexChannelFactory`1.CreateChannel(InstanceContext callbackInstance, EndpointAddress address, Uri via)
   at System.ServiceModel.ClientBase`1.CreateChannel()
   at System.ServiceModel.ClientBase`1.CreateChannelInternal()
   at System.ServiceModel.ClientBase`1.get_Channel()
   at Myrtille.Web.RemoteSessionProcessClient.GetProcessIdentity()
   at Myrtille.Web.RemoteSessionPipes.CreatePipes())
2022-02-21 14:43:57,274 [53] ERROR System.Diagnostics redirection [(null)] - Failed to call service start process, remote session 1d301cd0-d2c0-4d43-8db3-ec403280ea77 (System.ServiceModel.CommunicationObjectFaultedException: The communication object, System.ServiceModel.DuplexChannelFactory`1[Myrtille.Services.Contracts.IRemoteSessionProcess], cannot be used for communication because it is in the Faulted state.
   at System.ServiceModel.Channels.CommunicationObject.ThrowIfDisposed()
   at System.ServiceModel.ChannelFactory.EnsureOpened()
   at System.ServiceModel.DuplexChannelFactory`1.CreateChannel(InstanceContext callbackInstance, EndpointAddress address, Uri via)
   at System.ServiceModel.ClientBase`1.CreateChannel()
   at System.ServiceModel.ClientBase`1.CreateChannelInternal()
   at System.ServiceModel.ClientBase`1.get_Channel()
   at Myrtille.Web.RemoteSessionProcessClient.StartProcess(Guid remoteSessionId, HostType hostType, SecurityProtocol securityProtocol, String serverAddress, String vmGuid, String userDomain, String userName, String startProgram, Int32 clientWidth, Int32 clientHeight, Boolean allowRemoteClipboard, Boolean allowPrintDownload, Boolean allowAudioPlayback))
2022-02-21 14:43:57,276 [53] ERROR System.Diagnostics redirection [(null)] - Failed to connect the remote session 1d301cd0-d2c0-4d43-8db3-ec403280ea77 (System.ServiceModel.CommunicationObjectFaultedException: The communication object, System.ServiceModel.DuplexChannelFactory`1[Myrtille.Services.Contracts.IRemoteSessionProcess], cannot be used for communication because it is in the Faulted state.
   at System.ServiceModel.Channels.CommunicationObject.ThrowIfDisposed()
   at System.ServiceModel.ChannelFactory.EnsureOpened()
   at System.ServiceModel.DuplexChannelFactory`1.CreateChannel(InstanceContext callbackInstance, EndpointAddress address, Uri via)
   at System.ServiceModel.ClientBase`1.CreateChannel()
   at System.ServiceModel.ClientBase`1.CreateChannelInternal()
   at System.ServiceModel.ClientBase`1.get_Channel()
   at Myrtille.Web.RemoteSessionProcessClient.StartProcess(Guid remoteSessionId, HostType hostType, SecurityProtocol securityProtocol, String serverAddress, String vmGuid, String userDomain, String userName, String startProgram, Int32 clientWidth, Int32 clientHeight, Boolean allowRemoteClipboard, Boolean allowPrintDownload, Boolean allowAudioPlayback)
   at Myrtille.Web.RemoteSessionSocketHandler.OnOpen())

jorbig avatar Feb 21 '22 13:02 jorbig