Skip to content

Add a runtime check for Microsoft.IO.Redist #7335

@JoeRobich

Description

@JoeRobich

Since #6771 merged, the net472 build uses Microsoft.IO.Redist (M.IO.R) instead of System.IO. This is a problem when running the net472 build on Linux or MacOS, since M.IO.R pinvokes into Kernel32 which is a Windows library.

1093 System.EntryPointNotFoundException: GetFullPathNameW assembly:<unknown assembly> type:<unknown type> member:(null) 
1094 at (wrapper managed-to-native) Interop+Kernel32.GetFullPathNameW(char&,uint,char&,intptr) 
1095 at System.IO.PathHelper.GetFullPathName (System.ReadOnlySpan`1[T] path, System.Text.ValueStringBuilder& builder) [0x0001c] in <d528d43e4d354c288aa6a5ce49a5eba7>:0 
1096 at System.IO.PathHelper.Normalize (System.String path) [0x00021] in <d528d43e4d354c288aa6a5ce49a5eba7>:0 
1097 at Microsoft.IO.Path.GetFullPathInternal (System.String path) [0x0000f] in <d528d43e4d354c288aa6a5ce49a5eba7>:0 
1098 at Microsoft.IO.Path.GetFullPath (System.String path) [0x00044] in <d528d43e4d354c288aa6a5ce49a5eba7>:0 

It would be good to have a runtime check and fallback to System.IO on non-windows platforms.

Metadata

Metadata

Assignees

Labels

MonoMono-specific issues. Also see https://github.com/mono/msbuildPartner requesttriagedxplat

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions