[Problem] MPF no longer runs in Windows 7 #509

Closed
opened 2026-01-29 16:17:42 +00:00 by claunia · 3 comments
Owner

Originally created by @tjanas on GitHub (Mar 13, 2023).

Originally assigned to: @mnadareski on GitHub.

Version
What version are you using?

  • Stable release (2.5)
  • WIP release (version here)

Build
What runtime version are you using?

  • .NET Framework 4.8 running on (Windows 7 Home Premium 64-bit)
  • .NET 6.0 running on (Operating System)

Describe the issue
At startup, MPF throws a System.IO.FileLoadException after Scanning for drives..

To Reproduce
Steps to reproduce the behavior:

  1. Run MPF

Expected behavior
Same behavior as MPF 2.4

Originally created by @tjanas on GitHub (Mar 13, 2023). Originally assigned to: @mnadareski on GitHub. **Version** What version are you using? - [X] Stable release (2.5) - [ ] WIP release (version here) **Build** What runtime version are you using? - [X] .NET Framework 4.8 running on (Windows 7 Home Premium 64-bit) - [ ] .NET 6.0 running on (Operating System) **Describe the issue** At startup, MPF throws a System.IO.FileLoadException after `Scanning for drives..` **To Reproduce** Steps to reproduce the behavior: 1. Run MPF **Expected behavior** Same behavior as MPF 2.4
claunia added the enhancementbug labels 2026-01-29 16:17:42 +00:00
Author
Owner

@mnadareski commented on GitHub (Mar 13, 2023):

I will not be actively pursuing the changes required to support this. The culprit is Microsoft.Management.Interface, the recommended replacement to System.Management, used by MPF for drive polling. If somebody else is willing to put in the effort to debug and enable support, I will gladly review their pull request.

@mnadareski commented on GitHub (Mar 13, 2023): I will not be actively pursuing the changes required to support this. The culprit is `Microsoft.Management.Interface`, the recommended replacement to `System.Management`, used by MPF for drive polling. If somebody else is willing to put in the effort to debug and enable support, I will gladly review their pull request.
Author
Owner

@tjanas commented on GitHub (Mar 13, 2023):

Additional details on the point of failure:

System.IO.FileLoadException
  HResult=0x8013141A
  Message=Could not load file or assembly 'Microsoft.Management.Infrastructure, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. Strong name validation failed. (Exception from HRESULT: 0x8013141A)
  Source=MPF.Core
  StackTrace:
   at MPF.Core.Data.Drive.GetDriveList(Boolean ignoreFixedDrives) in C:\Source\Repos\MPF\MPF.Core\Data\Drive.cs:line 635
   at MPF.Core.Data.Drive.CreateListOfDrives(Boolean ignoreFixedDrives) in C:\Source\Repos\MPF\MPF.Core\Data\Drive.cs:line 165
   at MPF.UI.ViewModels.MainViewModel.PopulateDrives() in C:\Source\Repos\MPF\MPF\ViewModels\MainViewModel.cs:line 112
   at System.Windows.Threading.DispatcherOperation.InvokeDelegateCore()
   at System.Windows.Threading.DispatcherOperation.InvokeImpl()

Inner Exception 1:
SecurityException: Strong name validation failed. (Exception from HRESULT: 0x8013141A)

After adding the following two keys to registry, this exception no longer occurs, However, MPF fails to detect any of the drives present:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\StrongName\Verification\*,31bf3856ad364e35]
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\StrongName\Verification\*,31bf3856ad364e35]
@tjanas commented on GitHub (Mar 13, 2023): Additional details on the point of failure: ``` System.IO.FileLoadException HResult=0x8013141A Message=Could not load file or assembly 'Microsoft.Management.Infrastructure, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. Strong name validation failed. (Exception from HRESULT: 0x8013141A) Source=MPF.Core StackTrace: at MPF.Core.Data.Drive.GetDriveList(Boolean ignoreFixedDrives) in C:\Source\Repos\MPF\MPF.Core\Data\Drive.cs:line 635 at MPF.Core.Data.Drive.CreateListOfDrives(Boolean ignoreFixedDrives) in C:\Source\Repos\MPF\MPF.Core\Data\Drive.cs:line 165 at MPF.UI.ViewModels.MainViewModel.PopulateDrives() in C:\Source\Repos\MPF\MPF\ViewModels\MainViewModel.cs:line 112 at System.Windows.Threading.DispatcherOperation.InvokeDelegateCore() at System.Windows.Threading.DispatcherOperation.InvokeImpl() Inner Exception 1: SecurityException: Strong name validation failed. (Exception from HRESULT: 0x8013141A) ``` After adding the following two keys to registry, this exception no longer occurs, However, MPF fails to detect any of the drives present: ``` [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\StrongName\Verification\*,31bf3856ad364e35] [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\StrongName\Verification\*,31bf3856ad364e35] ```
Author
Owner

@mnadareski commented on GitHub (Mar 20, 2023):

Strong name validation being disabled and 43cf8e1a45 appears to have fixed this, somehow. I'm considering this closed.

@mnadareski commented on GitHub (Mar 20, 2023): Strong name validation being disabled and https://github.com/SabreTools/MPF/commit/43cf8e1a450ea299905bf9629a72ecfb6ff57d49 appears to have fixed this, somehow. I'm considering this closed.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: SabreTools/MPF#509