diff --git a/src/settings-ui/Settings.UI/Helpers/NativeMethods.cs b/src/settings-ui/Settings.UI/Helpers/NativeMethods.cs index 8a7bdb29e7..71ff81cf54 100644 --- a/src/settings-ui/Settings.UI/Helpers/NativeMethods.cs +++ b/src/settings-ui/Settings.UI/Helpers/NativeMethods.cs @@ -38,6 +38,12 @@ namespace Microsoft.PowerToys.Settings.UI.Helpers [DllImport("user32.dll")] internal static extern int SetWindowLong(IntPtr hWnd, int nIndex, int dwNewLong); + [DllImport("shell32.dll")] + internal static extern IntPtr SHBrowseForFolderW(ref ShellGetFolder.BrowseInformation browseInfo); + + [DllImport("shell32.dll")] + internal static extern int SHGetPathFromIDListW(IntPtr pidl, IntPtr pszPath); + #pragma warning disable CA1401 // P/Invokes should not be visible [DllImport("user32.dll")] public static extern bool ShowWindow(System.IntPtr hWnd, int nCmdShow); @@ -59,6 +65,7 @@ namespace Microsoft.PowerToys.Settings.UI.Helpers [DllImport("kernel32.dll", CharSet = CharSet.Unicode)] public static extern bool FreeLibrary(IntPtr hModule); + #pragma warning restore CA1401 // P/Invokes should not be visible [DllImport("user32.dll", SetLastError = true, CharSet = CharSet.Unicode)] diff --git a/src/settings-ui/Settings.UI/Helpers/ShellGetFolder.cs b/src/settings-ui/Settings.UI/Helpers/ShellGetFolder.cs index 9b44c88500..32acc06a72 100644 --- a/src/settings-ui/Settings.UI/Helpers/ShellGetFolder.cs +++ b/src/settings-ui/Settings.UI/Helpers/ShellGetFolder.cs @@ -5,18 +5,11 @@ using System; using System.Runtime.InteropServices; using System.Text; -using static Microsoft.PowerToys.Settings.UI.Helpers.ShellGetFolder; namespace Microsoft.PowerToys.Settings.UI.Helpers { public class ShellGetFolder { - [DllImport("shell32.dll")] - private static extern IntPtr SHBrowseForFolderW(ref BrowseInformation browseInfo); - - [DllImport("shell32.dll")] - private static extern int SHGetPathFromIDListW(IntPtr pidl, IntPtr pszPath); - public delegate int BrowseCallbackProc(IntPtr hwnd, int msg, IntPtr lp, IntPtr wp); [StructLayout(LayoutKind.Sequential)] @@ -51,8 +44,8 @@ namespace Microsoft.PowerToys.Settings.UI.Helpers try { - pidl = SHBrowseForFolderW(ref browseInfo); - if (SHGetPathFromIDListW(pidl, bufferAddress) == 0) + pidl = NativeMethods.SHBrowseForFolderW(ref browseInfo); + if (NativeMethods.SHGetPathFromIDListW(pidl, bufferAddress) == 0) { return null; }