├── .gitignore
├── LICENSE
├── README-zh.md
├── README.md
└── src
└── WPFDevelopers.Minimal
├── Directory.Build.props
├── Microsoft.Windows.Shell
├── JumpItem.cs
├── JumpItemRejectionReason.cs
├── JumpItemsRejectedEventArgs.cs
├── JumpItemsRemovedEventArgs.cs
├── JumpList.cs
├── JumpPath.cs
├── JumpTask.cs
├── Microsoft.Windows.Shell.projitems
├── Microsoft.Windows.Shell.shproj
├── Standard
│ ├── AC.cs
│ ├── APPDOCLISTTYPE.cs
│ ├── Assert.cs
│ ├── BI.cs
│ ├── BITMAPINFO.cs
│ ├── BITMAPINFOHEADER.cs
│ ├── BLENDFUNCTION.cs
│ ├── CHANGEFILTERSTRUCT.cs
│ ├── CLSID.cs
│ ├── CREATESTRUCT.cs
│ ├── CS.cs
│ ├── CombineRgnResult.cs
│ ├── DOGIF.cs
│ ├── DWMFLIP3D.cs
│ ├── DWMNCRP.cs
│ ├── DWMWA.cs
│ ├── DWM_SIT.cs
│ ├── DWM_TIMING_INFO.cs
│ ├── DeviceCap.cs
│ ├── DoubleUtilities.cs
│ ├── DpiHelper.cs
│ ├── ErrorModes.cs
│ ├── FO.cs
│ ├── FOF.cs
│ ├── Facility.cs
│ ├── GCLP.cs
│ ├── GPS.cs
│ ├── GWL.cs
│ ├── HCF.cs
│ ├── HIGHCONTRAST.cs
│ ├── HRESULT.cs
│ ├── HT.cs
│ ├── IApplicationDestinations.cs
│ ├── IApplicationDocumentLists.cs
│ ├── ICustomDestinationList.cs
│ ├── IEnumIDList.cs
│ ├── IEnumObjects.cs
│ ├── IID.cs
│ ├── INPUT.cs
│ ├── INPUT_TYPE.cs
│ ├── IObjectArray.cs
│ ├── IObjectCollection.cs
│ ├── IObjectWithAppUserModelId.cs
│ ├── IObjectWithProgId.cs
│ ├── IPropertyStore.cs
│ ├── IShellFolder.cs
│ ├── IShellItem.cs
│ ├── IShellItem2.cs
│ ├── IShellItemArray.cs
│ ├── IShellLinkW.cs
│ ├── ITaskbarList.cs
│ ├── ITaskbarList2.cs
│ ├── ITaskbarList3.cs
│ ├── ITaskbarList4.cs
│ ├── KDC.cs
│ ├── LOGFONT.cs
│ ├── MARGINS.cs
│ ├── MF.cs
│ ├── MINMAXINFO.cs
│ ├── MONITORINFO.cs
│ ├── MOUSEEVENTF.cs
│ ├── MOUSEINPUT.cs
│ ├── MSGFLT.cs
│ ├── MSGFLTINFO.cs
│ ├── ManagedIStream.cs
│ ├── MessageHandler.cs
│ ├── MessageWindow.cs
│ ├── NIF.cs
│ ├── NIIF.cs
│ ├── NIM.cs
│ ├── NONCLIENTMETRICS.cs
│ ├── NOTIFYICONDATA.cs
│ ├── NativeMethods.cs
│ ├── OLECMDEXECOPT.cs
│ ├── OLECMDF.cs
│ ├── OLECMDID.cs
│ ├── PKEY.cs
│ ├── POINT.cs
│ ├── PROPVARIANT.cs
│ ├── READYSTATE.cs
│ ├── RECT.cs
│ ├── RGBQUAD.cs
│ ├── RGN.cs
│ ├── RefPOINT.cs
│ ├── RefRECT.cs
│ ├── SC.cs
│ ├── SFGAO.cs
│ ├── SHARD.cs
│ ├── SHARDAPPIDINFO.cs
│ ├── SHARDAPPIDINFOIDLIST.cs
│ ├── SHARDAPPIDINFOLINK.cs
│ ├── SHCONTF.cs
│ ├── SHFILEOPSTRUCT.cs
│ ├── SHGDN.cs
│ ├── SIATTRIBFLAGS.cs
│ ├── SICHINT.cs
│ ├── SIGDN.cs
│ ├── SIZE.cs
│ ├── SLGP.cs
│ ├── SM.cs
│ ├── SPI.cs
│ ├── SPIF.cs
│ ├── STATE_SYSTEM.cs
│ ├── STPF.cs
│ ├── STR_GPS.cs
│ ├── SW.cs
│ ├── SWP.cs
│ ├── SafeConnectionPointCookie.cs
│ ├── SafeDC.cs
│ ├── SafeFindHandle.cs
│ ├── SafeGdiplusStartupToken.cs
│ ├── SafeHBITMAP.cs
│ ├── StartupInput.cs
│ ├── StartupOutput.cs
│ ├── Status.cs
│ ├── StockObject.cs
│ ├── TBPF.cs
│ ├── THB.cs
│ ├── THBF.cs
│ ├── THUMBBUTTON.cs
│ ├── TITLEBARINFO.cs
│ ├── TITLEBARINFOEX.cs
│ ├── ULW.cs
│ ├── UNSIGNED_RATIO.cs
│ ├── Utility.cs
│ ├── Verify.cs
│ ├── WIN32_FIND_DATAW.cs
│ ├── WINDOWPLACEMENT.cs
│ ├── WINDOWPOS.cs
│ ├── WINDOWTHEMEATTRIBUTETYPE.cs
│ ├── WM.cs
│ ├── WNDCLASSEX.cs
│ ├── WS.cs
│ ├── WS_EX.cs
│ ├── WTA_OPTIONS.cs
│ ├── WTNCA.cs
│ ├── WVR.cs
│ ├── Win32Error.cs
│ ├── Win32Value.cs
│ ├── WndProc.cs
│ └── WndProcHook.cs
├── SystemCommands.cs
├── SystemParameters2.cs
├── TaskbarItemInfo.cs
├── TaskbarItemProgressState.cs
├── ThumbButtonInfo.cs
├── ThumbButtonInfoCollection.cs
├── WindowChrome.cs
└── WindowChromeWorker.cs
├── WPFDevelopers.Minimal.Net40
├── Effects
│ └── GrayscaleEffect.ps
├── Properties
│ └── AssemblyInfo.cs
├── Themes
│ ├── Generic.xaml
│ └── Theme.xaml
├── WPFDevelopers.Minimal.Net40.csproj
├── WPFDevelopers.Minimal.Net40.csproj.user
└── Window.cs
├── WPFDevelopers.Minimal.Net45x
├── Effects
│ └── GrayscaleEffect.ps
├── Properties
│ └── AssemblyInfo.cs
├── Themes
│ ├── Generic.xaml
│ └── Theme.xaml
├── WPFDevelopers.Minimal.Net45x.csproj
├── WPFDevelopers.Minimal.Net45x.csproj.user
└── Window.cs
├── WPFDevelopers.Minimal.Sample.Net40
├── Resources
│ └── WPFDevelopers.Minimal.ico
├── WPFDevelopers.Minimal.Sample.Net40.csproj
├── WPFDevelopers.Minimal.Sample.Net40.csproj.user
└── WPFDevelopers.Minimal.ico
├── WPFDevelopers.Minimal.Sample.Net45x
├── Resources
│ └── WPFDevelopers.Minimal.ico
├── WPFDevelopers.Minimal.Sample.Net45x.csproj
├── WPFDevelopers.Minimal.Sample.Net45x.csproj.user
└── WPFDevelopers.Minimal.ico
├── WPFDevelopers.Minimal.Sample.Shared
├── App.xaml
├── App.xaml.cs
├── Converts
│ └── StateConvert.cs
├── ExampleViews
│ ├── AboutWindow.xaml
│ ├── AboutWindow.xaml.cs
│ ├── MainView.xaml
│ ├── MainView.xaml.cs
│ ├── VirtualizingWrapPanelExample.xaml
│ └── VirtualizingWrapPanelExample.xaml.cs
├── Light.AmericanRose.xaml
├── Light.Carmine.xaml
├── Models
│ ├── HospitalList.cs
│ ├── UserModel.cs
│ └── ViewModelBase.cs
├── WPFDevelopers.Minimal.Sample.Shared.projitems
├── WPFDevelopers.Minimal.Sample.Shared.shproj
├── WPFDevelopers.Minimal.Sample.Shared.shproj.user
└── WPFDevelopers.Minimal.ico
├── WPFDevelopers.Minimal.Shared
├── Controls
│ ├── Loading
│ │ ├── Loading.cs
│ │ └── WPFLoading.cs
│ ├── MessageBox
│ │ ├── MessageBox.cs
│ │ └── WPFMessageBox.cs
│ ├── NotifyIcon
│ │ ├── NotifyIcon.cs
│ │ └── Runtimes
│ │ │ ├── Gdi32Interop.cs
│ │ │ ├── Interop
│ │ │ ├── BITMAPINFO.cs
│ │ │ ├── BitmapHandle.cs
│ │ │ ├── CommonHandles.cs
│ │ │ ├── HandleCollector.cs
│ │ │ ├── IconHandle.cs
│ │ │ └── WpfSafeHandle.cs
│ │ │ ├── Kernel32Interop.cs
│ │ │ ├── Shell32
│ │ │ ├── NIFFlags.cs
│ │ │ ├── NIIFFlags.cs
│ │ │ ├── NISFlags.cs
│ │ │ ├── NOTIFYICONDATA.cs
│ │ │ ├── NotifyCommand.cs
│ │ │ └── NotifyFlags.cs
│ │ │ ├── Shell32Interop.cs
│ │ │ ├── User32
│ │ │ ├── CS.cs
│ │ │ ├── ImageType.cs
│ │ │ ├── LoadImageFlags.cs
│ │ │ ├── WM.cs
│ │ │ ├── WNDCLASSEX.cs
│ │ │ ├── WS.cs
│ │ │ ├── WS_EX.cs
│ │ │ └── WndProc.cs
│ │ │ └── User32Interop.cs
│ ├── Panel
│ │ └── SmallPanel.cs
│ ├── ThemeControl
│ │ ├── ThemeControl.cs
│ │ └── ThemeModel.cs
│ └── VirtualizingWrapPanel
│ │ └── VirtualizingWrapPanel.cs
├── Converts
│ ├── DatePickerToCurrentConverter.cs
│ ├── ElementConvert.cs
│ └── ObjectNullToVisibilityConverter.cs
├── Effects
│ └── GrayscaleEffect.cs
├── Helpers
│ ├── ControlHelper.cs
│ ├── DatePickerHelper.cs
│ ├── ElementHelper.cs
│ ├── MaskAdorner.cs
│ ├── PasswordBoxHelper.cs
│ ├── TextBoxHelper.cs
│ ├── ThemeType.cs
│ └── ViewModelBase.cs
├── Resources.cs
├── Styles
│ ├── Styles.Buttons.xaml
│ ├── Styles.CheckBox.xaml
│ ├── Styles.ComboBox.xaml
│ ├── Styles.ContextMenu.xaml
│ ├── Styles.DataGrid.xaml
│ ├── Styles.DatePicker.xaml
│ ├── Styles.Expander.xaml
│ ├── Styles.GridSplitter.xaml
│ ├── Styles.GroupBox.xaml
│ ├── Styles.Hyperlink.xaml
│ ├── Styles.Label.xaml
│ ├── Styles.ListBox.xaml
│ ├── Styles.ListView.xaml
│ ├── Styles.Loading.xaml
│ ├── Styles.Menu.xaml
│ ├── Styles.MessageBox.xaml
│ ├── Styles.PasswordBox.xaml
│ ├── Styles.ProgressBar.xaml
│ ├── Styles.RadioButton.xaml
│ ├── Styles.RepeatButton.xaml
│ ├── Styles.ScrollBar.xaml
│ ├── Styles.Slider.xaml
│ ├── Styles.TabControl.xaml
│ ├── Styles.TextBox.xaml
│ ├── Styles.ThemeControl.xaml
│ ├── Styles.ToggleButton.xaml
│ └── Styles.TreeView.xaml
├── Themes
│ ├── Basic
│ │ ├── Animations.xaml
│ │ ├── Colors.xaml
│ │ ├── ControlBasic.xaml
│ │ ├── Dark.Color.xaml
│ │ ├── Font.xaml
│ │ ├── Geometrys.xaml
│ │ └── Light.Color.xaml
│ ├── Dark.Blue.xaml
│ ├── Light.Blue.xaml
│ ├── Light.Green.xaml
│ ├── Light.Orange.xaml
│ ├── Light.Pink.xaml
│ ├── Light.Purple.xaml
│ ├── Light.Red.xaml
│ ├── Theme40.txt
│ ├── Theme45x.txt
│ └── XamlCombine.exe
├── WPFDevelopers.Minimal.Shared.projitems
├── WPFDevelopers.Minimal.Shared.shproj
└── WPFDevelopers.Minimal.Shared.shproj.user
└── WPFDevelopers.Minimal.sln
/.gitignore:
--------------------------------------------------------------------------------
1 | ################################################################################
2 | # 此 .gitignore 文件已由 Microsoft(R) Visual Studio 自动创建。
3 | ################################################################################
4 | /src/OutPut
5 | /src/WPFDevelopers.Minimal/.vs
6 | /src/WPFDevelopers.Minimal/Wpf45
7 | /src/WPFDevelopers.Minimal/WPFDevelopers.Minimal.Net45x/bin
8 | /src/WPFDevelopers.Minimal/WPFDevelopers.Minimal.Sample.Net40/bin
9 | /src/WPFDevelopers.Minimal/WPFDevelopers.Minimal.Net40/bin
10 | /src/WPFDevelopers.Minimal/packages
11 |
12 |
13 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2022 WPFDevelopersOrg
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Directory.Build.props:
--------------------------------------------------------------------------------
1 |
2 |
3 | $(MSBuildThisFileDirectory).vs\$(SolutionName)\Intermediate\$(MSBuildProjectName)\
4 | $(MSBuildThisFileDirectory)..\OutPut\
5 | True
6 |
7 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/JumpItem.cs:
--------------------------------------------------------------------------------
1 | namespace Microsoft.Windows.Shell
2 | {
3 | public abstract class JumpItem
4 | {
5 | internal JumpItem()
6 | {
7 | }
8 |
9 | public string CustomCategory { get; set; }
10 | }
11 | }
12 |
13 |
14 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/JumpItemRejectionReason.cs:
--------------------------------------------------------------------------------
1 | namespace Microsoft.Windows.Shell
2 | {
3 | public enum JumpItemRejectionReason
4 | {
5 | None,
6 | InvalidItem,
7 | NoRegisteredHandler,
8 | RemovedByUser
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/JumpItemsRejectedEventArgs.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 |
4 | namespace Microsoft.Windows.Shell
5 | {
6 | public sealed class JumpItemsRejectedEventArgs : EventArgs
7 | {
8 | public JumpItemsRejectedEventArgs() : this(null, null)
9 | {
10 | }
11 |
12 | public JumpItemsRejectedEventArgs(IList rejectedItems, IList reasons)
13 | {
14 | if ((rejectedItems == null && reasons != null) || (reasons == null && rejectedItems != null) || (rejectedItems != null && reasons != null && rejectedItems.Count != reasons.Count))
15 | {
16 | throw new ArgumentException("The counts of rejected items doesn't match the count of reasons.");
17 | }
18 | if (rejectedItems != null)
19 | {
20 | this.RejectedItems = new List(rejectedItems).AsReadOnly();
21 | this.RejectionReasons = new List(reasons).AsReadOnly();
22 | return;
23 | }
24 | this.RejectedItems = new List().AsReadOnly();
25 | this.RejectionReasons = new List().AsReadOnly();
26 | }
27 |
28 | public IList RejectedItems { get; private set; }
29 |
30 | public IList RejectionReasons { get; private set; }
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/JumpItemsRemovedEventArgs.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 |
4 | namespace Microsoft.Windows.Shell
5 | {
6 | public sealed class JumpItemsRemovedEventArgs : EventArgs
7 | {
8 | public JumpItemsRemovedEventArgs() : this(null)
9 | {
10 | }
11 |
12 | public JumpItemsRemovedEventArgs(IList removedItems)
13 | {
14 | if (removedItems != null)
15 | {
16 | this.RemovedItems = new List(removedItems).AsReadOnly();
17 | return;
18 | }
19 | this.RemovedItems = new List().AsReadOnly();
20 | }
21 |
22 | public IList RemovedItems { get; private set; }
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/JumpPath.cs:
--------------------------------------------------------------------------------
1 | namespace Microsoft.Windows.Shell
2 | {
3 | public class JumpPath : JumpItem
4 | {
5 | public string Path { get; set; }
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/JumpTask.cs:
--------------------------------------------------------------------------------
1 | namespace Microsoft.Windows.Shell
2 | {
3 | public class JumpTask : JumpItem
4 | {
5 | public string Title { get; set; }
6 |
7 | public string Description { get; set; }
8 |
9 | public string ApplicationPath { get; set; }
10 |
11 | public string Arguments { get; set; }
12 |
13 | public string WorkingDirectory { get; set; }
14 |
15 | public string IconResourcePath { get; set; }
16 |
17 | public int IconResourceIndex { get; set; }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Microsoft.Windows.Shell.shproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | 572d11b9-7ea8-4a04-849a-bb2b0371786f
5 | 14.0
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/AC.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum AC : byte
4 | {
5 | SRC_OVER,
6 | SRC_ALPHA
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/APPDOCLISTTYPE.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum APPDOCLISTTYPE
4 | {
5 | ADLT_RECENT,
6 | ADLT_FREQUENT
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/BI.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum BI
4 | {
5 | RGB
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/BITMAPINFO.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public struct BITMAPINFO
4 | {
5 | public BITMAPINFOHEADER bmiHeader;
6 |
7 | public RGBQUAD bmiColors;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/BITMAPINFOHEADER.cs:
--------------------------------------------------------------------------------
1 | using System.Runtime.InteropServices;
2 |
3 | namespace Standard
4 | {
5 | [StructLayout(LayoutKind.Sequential, Pack = 2)]
6 | public struct BITMAPINFOHEADER
7 | {
8 | public int biSize;
9 |
10 | public int biWidth;
11 |
12 | public int biHeight;
13 |
14 | public short biPlanes;
15 |
16 | public short biBitCount;
17 |
18 | public BI biCompression;
19 |
20 | public int biSizeImage;
21 |
22 | public int biXPelsPerMeter;
23 |
24 | public int biYPelsPerMeter;
25 |
26 | public int biClrUsed;
27 |
28 | public int biClrImportant;
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/BLENDFUNCTION.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public struct BLENDFUNCTION
4 | {
5 | public AC BlendOp;
6 |
7 | public byte BlendFlags;
8 |
9 | public byte SourceConstantAlpha;
10 |
11 | public AC AlphaFormat;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/CHANGEFILTERSTRUCT.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public struct CHANGEFILTERSTRUCT
4 | {
5 | public uint cbSize;
6 | public MSGFLTINFO ExtStatus;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/CLSID.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Standard
4 | {
5 | public static class CLSID
6 | {
7 | public static T CoCreateInstance(string clsid)
8 | {
9 | return (T)((object)Activator.CreateInstance(Type.GetTypeFromCLSID(new Guid(clsid))));
10 | }
11 |
12 | public const string TaskbarList = "56FDF344-FD6D-11d0-958A-006097C9A090";
13 |
14 | public const string EnumerableObjectCollection = "2d3468c1-36a7-43b6-ac24-d3f02fd9607a";
15 |
16 | public const string ShellLink = "00021401-0000-0000-C000-000000000046";
17 |
18 | public const string DestinationList = "77f10cf0-3db5-4966-b520-b7c54fd35ed6";
19 |
20 | public const string ApplicationDestinations = "86c14003-4d6b-4ef3-a7b4-0506663b2e68";
21 |
22 | public const string ApplicationDocumentLists = "86bec222-30f2-47e0-9f25-60d11cd75c28";
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/CREATESTRUCT.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Runtime.InteropServices;
3 |
4 | namespace Standard
5 | {
6 | [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Unicode)]
7 | public struct CREATESTRUCT
8 | {
9 | public IntPtr lpCreateParams;
10 |
11 | public IntPtr hInstance;
12 |
13 | public IntPtr hMenu;
14 |
15 | public IntPtr hwndParent;
16 |
17 | public int cy;
18 |
19 | public int cx;
20 |
21 | public int y;
22 |
23 | public int x;
24 |
25 | public WS style;
26 |
27 | [MarshalAs(UnmanagedType.LPWStr)]
28 | public string lpszName;
29 |
30 | [MarshalAs(UnmanagedType.LPWStr)]
31 | public string lpszClass;
32 |
33 | public WS_EX dwExStyle;
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/CS.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Standard
4 | {
5 | [Flags]
6 | public enum CS : uint
7 | {
8 | VREDRAW = 1U,
9 | HREDRAW = 2U,
10 | DBLCLKS = 8U,
11 | OWNDC = 32U,
12 | CLASSDC = 64U,
13 | PARENTDC = 128U,
14 | NOCLOSE = 512U,
15 | SAVEBITS = 2048U,
16 | BYTEALIGNCLIENT = 4096U,
17 | BYTEALIGNWINDOW = 8192U,
18 | GLOBALCLASS = 16384U,
19 | IME = 65536U,
20 | DROPSHADOW = 131072U
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/CombineRgnResult.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum CombineRgnResult
4 | {
5 | ERROR,
6 | NULLREGION,
7 | SIMPLEREGION,
8 | COMPLEXREGION
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/DOGIF.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum DOGIF
4 | {
5 | DEFAULT,
6 | TRAVERSE_LINK,
7 | NO_HDROP,
8 | NO_URL = 4,
9 | ONLY_IF_ONE = 8
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/DWMFLIP3D.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum DWMFLIP3D
4 | {
5 | DEFAULT,
6 | EXCLUDEBELOW,
7 | EXCLUDEABOVE
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/DWMNCRP.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum DWMNCRP
4 | {
5 | USEWINDOWSTYLE,
6 | DISABLED,
7 | ENABLED
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/DWMWA.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum DWMWA
4 | {
5 | NCRENDERING_ENABLED = 1,
6 | NCRENDERING_POLICY,
7 | TRANSITIONS_FORCEDISABLED,
8 | ALLOW_NCPAINT,
9 | CAPTION_BUTTON_BOUNDS,
10 | NONCLIENT_RTL_LAYOUT,
11 | FORCE_ICONIC_REPRESENTATION,
12 | FLIP3D_POLICY,
13 | EXTENDED_FRAME_BOUNDS,
14 | HAS_ICONIC_BITMAP,
15 | DISALLOW_PEEK,
16 | EXCLUDED_FROM_PEEK
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/DWM_SIT.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum DWM_SIT
4 | {
5 | None,
6 | DISPLAYFRAME
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/DWM_TIMING_INFO.cs:
--------------------------------------------------------------------------------
1 | using System.Runtime.InteropServices;
2 |
3 | namespace Standard
4 | {
5 | [StructLayout(LayoutKind.Sequential, Pack = 1)]
6 | public struct DWM_TIMING_INFO
7 | {
8 | public int cbSize;
9 |
10 | public UNSIGNED_RATIO rateRefresh;
11 |
12 | public ulong qpcRefreshPeriod;
13 |
14 | public UNSIGNED_RATIO rateCompose;
15 |
16 | public ulong qpcVBlank;
17 |
18 | public ulong cRefresh;
19 |
20 | public uint cDXRefresh;
21 |
22 | public ulong qpcCompose;
23 |
24 | public ulong cFrame;
25 |
26 | public uint cDXPresent;
27 |
28 | public ulong cRefreshFrame;
29 |
30 | public ulong cFrameSubmitted;
31 |
32 | public uint cDXPresentSubmitted;
33 |
34 | public ulong cFrameConfirmed;
35 |
36 | public uint cDXPresentConfirmed;
37 |
38 | public ulong cRefreshConfirmed;
39 |
40 | public uint cDXRefreshConfirmed;
41 |
42 | public ulong cFramesLate;
43 |
44 | public uint cFramesOutstanding;
45 |
46 | public ulong cFrameDisplayed;
47 |
48 | public ulong qpcFrameDisplayed;
49 |
50 | public ulong cRefreshFrameDisplayed;
51 |
52 | public ulong cFrameComplete;
53 |
54 | public ulong qpcFrameComplete;
55 |
56 | public ulong cFramePending;
57 |
58 | public ulong qpcFramePending;
59 |
60 | public ulong cFramesDisplayed;
61 |
62 | public ulong cFramesComplete;
63 |
64 | public ulong cFramesPending;
65 |
66 | public ulong cFramesAvailable;
67 |
68 | public ulong cFramesDropped;
69 |
70 | public ulong cFramesMissed;
71 |
72 | public ulong cRefreshNextDisplayed;
73 |
74 | public ulong cRefreshNextPresented;
75 |
76 | public ulong cRefreshesDisplayed;
77 |
78 | public ulong cRefreshesPresented;
79 |
80 | public ulong cRefreshStarted;
81 |
82 | public ulong cPixelsReceived;
83 |
84 | public ulong cPixelsDrawn;
85 |
86 | public ulong cBuffersEmpty;
87 | }
88 | }
89 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/DeviceCap.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum DeviceCap
4 | {
5 | BITSPIXEL = 12,
6 | PLANES = 14,
7 | LOGPIXELSX = 88,
8 | LOGPIXELSY = 90
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/DoubleUtilities.cs:
--------------------------------------------------------------------------------
1 | using System.Diagnostics.CodeAnalysis;
2 |
3 | namespace Standard
4 | {
5 | public static class DoubleUtilities
6 | {
7 | [SuppressMessage("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
8 | public static bool AreClose(double value1, double value2)
9 | {
10 | if (value1 == value2)
11 | {
12 | return true;
13 | }
14 | double num = value1 - value2;
15 | return num < 1.53E-06 && num > -1.53E-06;
16 | }
17 |
18 | [SuppressMessage("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
19 | public static bool LessThan(double value1, double value2)
20 | {
21 | return value1 < value2 && !DoubleUtilities.AreClose(value1, value2);
22 | }
23 |
24 | [SuppressMessage("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
25 | public static bool GreaterThan(double value1, double value2)
26 | {
27 | return value1 > value2 && !DoubleUtilities.AreClose(value1, value2);
28 | }
29 |
30 | [SuppressMessage("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
31 | public static bool LessThanOrClose(double value1, double value2)
32 | {
33 | return value1 < value2 || DoubleUtilities.AreClose(value1, value2);
34 | }
35 |
36 | [SuppressMessage("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
37 | public static bool GreaterThanOrClose(double value1, double value2)
38 | {
39 | return value1 > value2 || DoubleUtilities.AreClose(value1, value2);
40 | }
41 |
42 | [SuppressMessage("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
43 | public static bool IsFinite(double value)
44 | {
45 | return !double.IsNaN(value) && !double.IsInfinity(value);
46 | }
47 |
48 | [SuppressMessage("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
49 | public static bool IsValidSize(double value)
50 | {
51 | return DoubleUtilities.IsFinite(value) && DoubleUtilities.GreaterThanOrClose(value, 0.0);
52 | }
53 |
54 | private const double Epsilon = 1.53E-06;
55 | }
56 | }
57 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/DpiHelper.cs:
--------------------------------------------------------------------------------
1 | using System.Diagnostics.CodeAnalysis;
2 | using System.Windows;
3 | using System.Windows.Media;
4 |
5 | namespace Standard
6 | {
7 | public static class DpiHelper
8 | {
9 | [SuppressMessage("Microsoft.Performance", "CA1810:InitializeReferenceTypeStaticFieldsInline")]
10 | static DpiHelper()
11 | {
12 | using (SafeDC desktop = SafeDC.GetDesktop())
13 | {
14 | int deviceCaps = NativeMethods.GetDeviceCaps(desktop, DeviceCap.LOGPIXELSX);
15 | int deviceCaps2 = NativeMethods.GetDeviceCaps(desktop, DeviceCap.LOGPIXELSY);
16 | DpiHelper._transformToDip = Matrix.Identity;
17 | DpiHelper._transformToDip.Scale(96.0 / (double)deviceCaps, 96.0 / (double)deviceCaps2);
18 | DpiHelper._transformToDevice = Matrix.Identity;
19 | DpiHelper._transformToDevice.Scale((double)deviceCaps / 96.0, (double)deviceCaps2 / 96.0);
20 | }
21 | }
22 |
23 | public static Point LogicalPixelsToDevice(Point logicalPoint)
24 | {
25 | return DpiHelper._transformToDevice.Transform(logicalPoint);
26 | }
27 |
28 | public static Point DevicePixelsToLogical(Point devicePoint)
29 | {
30 | return DpiHelper._transformToDip.Transform(devicePoint);
31 | }
32 |
33 | [SuppressMessage("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
34 | public static Rect LogicalRectToDevice(Rect logicalRectangle)
35 | {
36 | Point point = DpiHelper.LogicalPixelsToDevice(new Point(logicalRectangle.Left, logicalRectangle.Top));
37 | Point point2 = DpiHelper.LogicalPixelsToDevice(new Point(logicalRectangle.Right, logicalRectangle.Bottom));
38 | return new Rect(point, point2);
39 | }
40 |
41 | public static Rect DeviceRectToLogical(Rect deviceRectangle)
42 | {
43 | Point point = DpiHelper.DevicePixelsToLogical(new Point(deviceRectangle.Left, deviceRectangle.Top));
44 | Point point2 = DpiHelper.DevicePixelsToLogical(new Point(deviceRectangle.Right, deviceRectangle.Bottom));
45 | return new Rect(point, point2);
46 | }
47 |
48 | [SuppressMessage("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
49 | public static Size LogicalSizeToDevice(Size logicalSize)
50 | {
51 | Point point = DpiHelper.LogicalPixelsToDevice(new Point(logicalSize.Width, logicalSize.Height));
52 | return new Size
53 | {
54 | Width = point.X,
55 | Height = point.Y
56 | };
57 | }
58 |
59 | public static Size DeviceSizeToLogical(Size deviceSize)
60 | {
61 | Point point = DpiHelper.DevicePixelsToLogical(new Point(deviceSize.Width, deviceSize.Height));
62 | return new Size(point.X, point.Y);
63 | }
64 |
65 | private static Matrix _transformToDevice;
66 |
67 | private static Matrix _transformToDip;
68 | }
69 | }
70 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/ErrorModes.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Standard
4 | {
5 | [Flags]
6 | public enum ErrorModes
7 | {
8 | Default = 0,
9 | FailCriticalErrors = 1,
10 | NoGpFaultErrorBox = 2,
11 | NoAlignmentFaultExcept = 4,
12 | NoOpenFileErrorBox = 32768
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/FO.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum FO
4 | {
5 | MOVE = 1,
6 | COPY,
7 | DELETE,
8 | RENAME
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/FOF.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum FOF : ushort
4 | {
5 | MULTIDESTFILES = 1,
6 | CONFIRMMOUSE,
7 | SILENT = 4,
8 | RENAMEONCOLLISION = 8,
9 | NOCONFIRMATION = 16,
10 | WANTMAPPINGHANDLE = 32,
11 | ALLOWUNDO = 64,
12 | FILESONLY = 128,
13 | SIMPLEPROGRESS = 256,
14 | NOCONFIRMMKDIR = 512,
15 | NOERRORUI = 1024,
16 | NOCOPYSECURITYATTRIBS = 2048,
17 | NORECURSION = 4096,
18 | NO_CONNECTED_ELEMENTS = 8192,
19 | WANTNUKEWARNING = 16384,
20 | NORECURSEREPARSE = 32768
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/Facility.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum Facility
4 | {
5 | Null,
6 | Rpc,
7 | Dispatch,
8 | Storage,
9 | Itf,
10 | Win32 = 7,
11 | Windows,
12 | Control = 10,
13 | Ese = 3678,
14 | WinCodec = 2200
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/GCLP.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum GCLP
4 | {
5 | HBRBACKGROUND = -10
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/GPS.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum GPS
4 | {
5 | DEFAULT,
6 | HANDLERPROPERTIESONLY,
7 | READWRITE,
8 | TEMPORARY = 4,
9 | FASTPROPERTIESONLY = 8,
10 | OPENSLOWITEM = 16,
11 | DELAYCREATION = 32,
12 | BESTEFFORT = 64,
13 | NO_OPLOCK = 128,
14 | MASK_VALID = 255
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/GWL.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum GWL
4 | {
5 | WNDPROC = -4,
6 | HINSTANCE = -6,
7 | HWNDPARENT = -8,
8 | STYLE = -16,
9 | EXSTYLE = -20,
10 | USERDATA = -21,
11 | ID = -12
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/HCF.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Standard
4 | {
5 | [Flags]
6 | public enum HCF
7 | {
8 | HIGHCONTRASTON = 1,
9 | AVAILABLE = 2,
10 | HOTKEYACTIVE = 4,
11 | CONFIRMHOTKEY = 8,
12 | HOTKEYSOUND = 16,
13 | INDICATOR = 32,
14 | HOTKEYAVAILABLE = 64
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/HIGHCONTRAST.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Standard
4 | {
5 | public struct HIGHCONTRAST
6 | {
7 | public int cbSize;
8 |
9 | public HCF dwFlags;
10 |
11 | public IntPtr lpszDefaultScheme;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/HT.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum HT
4 | {
5 | ERROR = -2,
6 | TRANSPARENT,
7 | NOWHERE,
8 | CLIENT,
9 | CAPTION,
10 | SYSMENU,
11 | GROWBOX,
12 | SIZE = 4,
13 | MENU,
14 | HSCROLL,
15 | VSCROLL,
16 | MINBUTTON,
17 | MAXBUTTON,
18 | LEFT,
19 | RIGHT,
20 | TOP,
21 | TOPLEFT,
22 | TOPRIGHT,
23 | BOTTOM,
24 | BOTTOMLEFT,
25 | BOTTOMRIGHT,
26 | BORDER,
27 | REDUCE = 8,
28 | ZOOM,
29 | SIZEFIRST,
30 | SIZELAST = 17,
31 | OBJECT = 19,
32 | CLOSE,
33 | HELP
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/IApplicationDestinations.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Runtime.InteropServices;
3 |
4 | namespace Standard
5 | {
6 | [Guid("12337d35-94c6-48a0-bce7-6a9c69d4d600")]
7 | [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
8 | [ComImport]
9 | public interface IApplicationDestinations
10 | {
11 | void SetAppID([MarshalAs(UnmanagedType.LPWStr)][In] string pszAppID);
12 |
13 | void RemoveDestination([MarshalAs(UnmanagedType.IUnknown)] object punk);
14 |
15 | void RemoveAllDestinations();
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/IApplicationDocumentLists.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Runtime.InteropServices;
3 |
4 | namespace Standard
5 | {
6 | [Guid("3c594f9f-9f30-47a1-979a-c9e83d3d0a06")]
7 | [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
8 | [ComImport]
9 | public interface IApplicationDocumentLists
10 | {
11 | void SetAppID([MarshalAs(UnmanagedType.LPWStr)] string pszAppID);
12 |
13 | [return: MarshalAs(UnmanagedType.IUnknown)]
14 | object GetList([In] APPDOCLISTTYPE listtype, [In] uint cItemsDesired, [In] ref Guid riid);
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/ICustomDestinationList.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Runtime.InteropServices;
3 |
4 | namespace Standard
5 | {
6 | [Guid("6332debf-87b5-4670-90c0-5e57b408a49e")]
7 | [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
8 | [ComImport]
9 | public interface ICustomDestinationList
10 | {
11 | void SetAppID([MarshalAs(UnmanagedType.LPWStr)][In] string pszAppID);
12 |
13 | [return: MarshalAs(UnmanagedType.Interface)]
14 | object BeginList(out uint pcMaxSlots, [In] ref Guid riid);
15 |
16 | [PreserveSig]
17 | HRESULT AppendCategory([MarshalAs(UnmanagedType.LPWStr)] string pszCategory, IObjectArray poa);
18 |
19 | void AppendKnownCategory(KDC category);
20 |
21 | [PreserveSig]
22 | HRESULT AddUserTasks(IObjectArray poa);
23 |
24 | void CommitList();
25 |
26 | [return: MarshalAs(UnmanagedType.Interface)]
27 | object GetRemovedDestinations([In] ref Guid riid);
28 |
29 | void DeleteList([MarshalAs(UnmanagedType.LPWStr)] string pszAppID);
30 |
31 | void AbortList();
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/IEnumIDList.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Runtime.InteropServices;
3 |
4 | namespace Standard
5 | {
6 | [Guid("000214F2-0000-0000-C000-000000000046")]
7 | [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
8 | [ComImport]
9 | public interface IEnumIDList
10 | {
11 | [PreserveSig]
12 | HRESULT Next(uint celt, out IntPtr rgelt, out int pceltFetched);
13 |
14 | [PreserveSig]
15 | HRESULT Skip(uint celt);
16 |
17 | void Reset();
18 |
19 | void Clone([MarshalAs(UnmanagedType.Interface)] out IEnumIDList ppenum);
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/IEnumObjects.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Runtime.InteropServices;
3 |
4 | namespace Standard
5 | {
6 | [Guid("2c1c7e2e-2d0e-4059-831e-1e6f82335c2e")]
7 | [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
8 | [ComImport]
9 | public interface IEnumObjects
10 | {
11 | void Next(uint celt, [In] ref Guid riid, [MarshalAs(UnmanagedType.LPArray, ArraySubType = UnmanagedType.IUnknown, SizeParamIndex = 0)][Out] object[] rgelt, out uint pceltFetched);
12 |
13 | void Skip(uint celt);
14 |
15 | void Reset();
16 |
17 | IEnumObjects Clone();
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/IID.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public static class IID
4 | {
5 | public const string EnumIdList = "000214F2-0000-0000-C000-000000000046";
6 |
7 | public const string EnumObjects = "2c1c7e2e-2d0e-4059-831e-1e6f82335c2e";
8 |
9 | public const string HtmlDocument2 = "332C4425-26CB-11D0-B483-00C04FD90119";
10 |
11 | public const string ModalWindow = "b4db1657-70d7-485e-8e3e-6fcb5a5c1802";
12 |
13 | public const string ObjectArray = "92CA9DCD-5622-4bba-A805-5E9F541BD8C9";
14 |
15 | public const string ObjectCollection = "5632b1a4-e38a-400a-928a-d4cd63230295";
16 |
17 | public const string PropertyNotifySink = "9BFBBC02-EFF1-101A-84ED-00AA00341D07";
18 |
19 | public const string PropertyStore = "886d8eeb-8cf2-4446-8d02-cdba1dbdcf99";
20 |
21 | public const string ServiceProvider = "6d5140c1-7436-11ce-8034-00aa006009fa";
22 |
23 | public const string ShellFolder = "000214E6-0000-0000-C000-000000000046";
24 |
25 | public const string ShellLink = "000214F9-0000-0000-C000-000000000046";
26 |
27 | public const string ShellItem = "43826d1e-e718-42ee-bc55-a1e261c37bfe";
28 |
29 | public const string ShellItem2 = "7e9fb0d3-919f-4307-ab2e-9b1860310c93";
30 |
31 | public const string ShellItemArray = "B63EA76D-1F85-456F-A19C-48159EFA858B";
32 |
33 | public const string TaskbarList = "56FDF342-FD6D-11d0-958A-006097C9A090";
34 |
35 | public const string TaskbarList2 = "602D4995-B13A-429b-A66E-1935E44F4317";
36 |
37 | public const string Unknown = "00000000-0000-0000-C000-000000000046";
38 |
39 | public const string ApplicationDestinations = "12337d35-94c6-48a0-bce7-6a9c69d4d600";
40 |
41 | public const string ApplicationDocumentLists = "3c594f9f-9f30-47a1-979a-c9e83d3d0a06";
42 |
43 | public const string CustomDestinationList = "6332debf-87b5-4670-90c0-5e57b408a49e";
44 |
45 | public const string ObjectWithAppUserModelId = "36db0196-9665-46d1-9ba7-d3709eecf9ed";
46 |
47 | public const string ObjectWithProgId = "71e806fb-8dee-46fc-bf8c-7748a8a1ae13";
48 |
49 | public const string TaskbarList3 = "ea1afb91-9e28-4b86-90e9-9e9f8a5eefaf";
50 |
51 | public const string TaskbarList4 = "c43dc798-95d1-4bea-9030-bb99e2983a1a";
52 | }
53 | }
54 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/INPUT.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public struct INPUT
4 | {
5 | public uint type;
6 |
7 | public MOUSEINPUT mi;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/INPUT_TYPE.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum INPUT_TYPE : uint
4 | {
5 | MOUSE
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/IObjectArray.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Runtime.InteropServices;
3 |
4 | namespace Standard
5 | {
6 | [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
7 | [Guid("92CA9DCD-5622-4bba-A805-5E9F541BD8C9")]
8 | [ComImport]
9 | public interface IObjectArray
10 | {
11 | uint GetCount();
12 |
13 | [return: MarshalAs(UnmanagedType.IUnknown)]
14 | object GetAt([In] uint uiIndex, [In] ref Guid riid);
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/IObjectCollection.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Runtime.InteropServices;
3 |
4 | namespace Standard
5 | {
6 | [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
7 | [Guid("92CA9DCD-5622-4bba-A805-5E9F541BD8C9")]
8 | [ComImport]
9 | public interface IObjectCollection : IObjectArray
10 | {
11 | //new uint GetCount();
12 |
13 | //[return: MarshalAs(UnmanagedType.IUnknown)]
14 | //object GetAt([In] uint uiIndex, [In] ref Guid riid);
15 |
16 | void AddObject([MarshalAs(UnmanagedType.IUnknown)] object punk);
17 |
18 | void AddFromArray(IObjectArray poaSource);
19 |
20 | void RemoveObjectAt(uint uiIndex);
21 |
22 | void Clear();
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/IObjectWithAppUserModelId.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Runtime.InteropServices;
3 |
4 | namespace Standard
5 | {
6 | [Guid("36db0196-9665-46d1-9ba7-d3709eecf9ed")]
7 | [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
8 | [ComImport]
9 | public interface IObjectWithAppUserModelId
10 | {
11 | void SetAppID([MarshalAs(UnmanagedType.LPWStr)] string pszAppID);
12 |
13 | [return: MarshalAs(UnmanagedType.LPWStr)]
14 | string GetAppID();
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/IObjectWithProgId.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Runtime.InteropServices;
3 |
4 | namespace Standard
5 | {
6 | [Guid("71e806fb-8dee-46fc-bf8c-7748a8a1ae13")]
7 | [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
8 | [ComImport]
9 | public interface IObjectWithProgId
10 | {
11 | void SetProgID([MarshalAs(UnmanagedType.LPWStr)] string pszProgID);
12 |
13 | [return: MarshalAs(UnmanagedType.LPWStr)]
14 | string GetProgID();
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/IPropertyStore.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Runtime.InteropServices;
3 |
4 | namespace Standard
5 | {
6 | [Guid("886d8eeb-8cf2-4446-8d02-cdba1dbdcf99")]
7 | [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
8 | [ComImport]
9 | public interface IPropertyStore
10 | {
11 | uint GetCount();
12 |
13 | PKEY GetAt(uint iProp);
14 |
15 | void GetValue([In] ref PKEY pkey, [In][Out] PROPVARIANT pv);
16 |
17 | void SetValue([In] ref PKEY pkey, PROPVARIANT pv);
18 |
19 | void Commit();
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/IShellFolder.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Runtime.InteropServices;
3 | using System.Runtime.InteropServices.ComTypes;
4 |
5 | namespace Standard
6 | {
7 | [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
8 | [Guid("000214E6-0000-0000-C000-000000000046")]
9 | [ComImport]
10 | public interface IShellFolder
11 | {
12 | void ParseDisplayName([In] IntPtr hwnd, [In] IBindCtx pbc, [MarshalAs(UnmanagedType.LPWStr)][In] string pszDisplayName, [In][Out] ref int pchEaten, out IntPtr ppidl, [In][Out] ref uint pdwAttributes);
13 |
14 | IEnumIDList EnumObjects([In] IntPtr hwnd, [In] SHCONTF grfFlags);
15 |
16 | [return: MarshalAs(UnmanagedType.Interface)]
17 | object BindToObject([In] IntPtr pidl, [In] IBindCtx pbc, [In] ref Guid riid);
18 |
19 | [return: MarshalAs(UnmanagedType.Interface)]
20 | object BindToStorage([In] IntPtr pidl, [In] IBindCtx pbc, [In] ref Guid riid);
21 |
22 | [PreserveSig]
23 | HRESULT CompareIDs([In] IntPtr lParam, [In] IntPtr pidl1, [In] IntPtr pidl2);
24 |
25 | [return: MarshalAs(UnmanagedType.Interface)]
26 | object CreateViewObject([In] IntPtr hwndOwner, [In] ref Guid riid);
27 |
28 | void GetAttributesOf([In] uint cidl, [In] IntPtr apidl, [In][Out] ref SFGAO rgfInOut);
29 |
30 | [return: MarshalAs(UnmanagedType.Interface)]
31 | object GetUIObjectOf([In] IntPtr hwndOwner, [In] uint cidl, [MarshalAs(UnmanagedType.LPArray, ArraySubType = UnmanagedType.SysInt, SizeParamIndex = 2)][In] IntPtr apidl, [In] ref Guid riid, [In][Out] ref uint rgfReserved);
32 |
33 | void GetDisplayNameOf([In] IntPtr pidl, [In] SHGDN uFlags, out IntPtr pName);
34 |
35 | void SetNameOf([In] IntPtr hwnd, [In] IntPtr pidl, [MarshalAs(UnmanagedType.LPWStr)][In] string pszName, [In] SHGDN uFlags, out IntPtr ppidlOut);
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/IShellItem.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Runtime.InteropServices;
3 | using System.Runtime.InteropServices.ComTypes;
4 |
5 | namespace Standard
6 | {
7 | [Guid("43826d1e-e718-42ee-bc55-a1e261c37bfe")]
8 | [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
9 | [ComImport]
10 | public interface IShellItem
11 | {
12 | [return: MarshalAs(UnmanagedType.Interface)]
13 | object BindToHandler(IBindCtx pbc, [In] ref Guid bhid, [In] ref Guid riid);
14 |
15 | IShellItem GetParent();
16 |
17 | [return: MarshalAs(UnmanagedType.LPWStr)]
18 | string GetDisplayName(SIGDN sigdnName);
19 |
20 | SFGAO GetAttributes(SFGAO sfgaoMask);
21 |
22 | int Compare(IShellItem psi, SICHINT hint);
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/IShellItem2.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Runtime.InteropServices;
3 | using System.Runtime.InteropServices.ComTypes;
4 |
5 | namespace Standard
6 | {
7 | [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
8 | [Guid("7e9fb0d3-919f-4307-ab2e-9b1860310c93")]
9 | [ComImport]
10 | public interface IShellItem2 : IShellItem
11 | {
12 | [return: MarshalAs(UnmanagedType.Interface)]
13 | object GetPropertyStore(GPS flags, [In] ref Guid riid);
14 |
15 | [return: MarshalAs(UnmanagedType.Interface)]
16 | object GetPropertyStoreWithCreateObject(GPS flags, [MarshalAs(UnmanagedType.IUnknown)] object punkCreateObject, [In] ref Guid riid);
17 |
18 | [return: MarshalAs(UnmanagedType.Interface)]
19 | object GetPropertyStoreForKeys(IntPtr rgKeys, uint cKeys, GPS flags, [In] ref Guid riid);
20 |
21 | [return: MarshalAs(UnmanagedType.Interface)]
22 | object GetPropertyDescriptionList(IntPtr keyType, [In] ref Guid riid);
23 |
24 | void Update(IBindCtx pbc);
25 |
26 | PROPVARIANT GetProperty(IntPtr key);
27 |
28 | Guid GetCLSID(IntPtr key);
29 |
30 | System.Runtime.InteropServices.ComTypes.FILETIME GetFileTime(IntPtr key);
31 |
32 | int GetInt32(IntPtr key);
33 |
34 | [return: MarshalAs(UnmanagedType.LPWStr)]
35 | string GetString(IntPtr key);
36 |
37 | uint GetUInt32(IntPtr key);
38 |
39 | ulong GetUInt64(IntPtr key);
40 |
41 | [return: MarshalAs(UnmanagedType.Bool)]
42 | void GetBool(IntPtr key);
43 | }
44 | }
45 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/IShellItemArray.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Runtime.InteropServices;
3 | using System.Runtime.InteropServices.ComTypes;
4 |
5 | namespace Standard
6 | {
7 | [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
8 | [Guid("B63EA76D-1F85-456F-A19C-48159EFA858B")]
9 | [ComImport]
10 | public interface IShellItemArray
11 | {
12 | [return: MarshalAs(UnmanagedType.Interface)]
13 | object BindToHandler(IBindCtx pbc, [In] ref Guid rbhid, [In] ref Guid riid);
14 |
15 | [return: MarshalAs(UnmanagedType.Interface)]
16 | object GetPropertyStore(int flags, [In] ref Guid riid);
17 |
18 | [return: MarshalAs(UnmanagedType.Interface)]
19 | object GetPropertyDescriptionList([In] ref PKEY keyType, [In] ref Guid riid);
20 |
21 | uint GetAttributes(SIATTRIBFLAGS dwAttribFlags, uint sfgaoMask);
22 |
23 | uint GetCount();
24 |
25 | IShellItem GetItemAt(uint dwIndex);
26 |
27 | [return: MarshalAs(UnmanagedType.Interface)]
28 | object EnumItems();
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/IShellLinkW.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Runtime.InteropServices;
3 | using System.Text;
4 |
5 | namespace Standard
6 | {
7 | [Guid("000214F9-0000-0000-C000-000000000046")]
8 | [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
9 | [ComImport]
10 | public interface IShellLinkW
11 | {
12 | void GetPath([MarshalAs(UnmanagedType.LPWStr)][Out] StringBuilder pszFile, int cchMaxPath, [In][Out] WIN32_FIND_DATAW pfd, SLGP fFlags);
13 |
14 | void GetIDList(out IntPtr ppidl);
15 |
16 | void SetIDList(IntPtr pidl);
17 |
18 | void GetDescription([MarshalAs(UnmanagedType.LPWStr)][Out] StringBuilder pszFile, int cchMaxName);
19 |
20 | void SetDescription([MarshalAs(UnmanagedType.LPWStr)] string pszName);
21 |
22 | void GetWorkingDirectory([MarshalAs(UnmanagedType.LPWStr)][Out] StringBuilder pszDir, int cchMaxPath);
23 |
24 | void SetWorkingDirectory([MarshalAs(UnmanagedType.LPWStr)] string pszDir);
25 |
26 | void GetArguments([MarshalAs(UnmanagedType.LPWStr)][Out] StringBuilder pszArgs, int cchMaxPath);
27 |
28 | void SetArguments([MarshalAs(UnmanagedType.LPWStr)] string pszArgs);
29 |
30 | short GetHotKey();
31 |
32 | void SetHotKey(short wHotKey);
33 |
34 | uint GetShowCmd();
35 |
36 | void SetShowCmd(uint iShowCmd);
37 |
38 | void GetIconLocation([MarshalAs(UnmanagedType.LPWStr)][Out] StringBuilder pszIconPath, int cchIconPath, out int piIcon);
39 |
40 | void SetIconLocation([MarshalAs(UnmanagedType.LPWStr)] string pszIconPath, int iIcon);
41 |
42 | void SetRelativePath([MarshalAs(UnmanagedType.LPWStr)] string pszPathRel, uint dwReserved);
43 |
44 | void Resolve(IntPtr hwnd, uint fFlags);
45 |
46 | void SetPath([MarshalAs(UnmanagedType.LPWStr)] string pszFile);
47 | }
48 | }
49 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/ITaskbarList.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Runtime.InteropServices;
3 |
4 | namespace Standard
5 | {
6 | [Guid("56FDF342-FD6D-11d0-958A-006097C9A090")]
7 | [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
8 | [ComImport]
9 | public interface ITaskbarList
10 | {
11 | void HrInit();
12 |
13 | void AddTab(IntPtr hwnd);
14 |
15 | void DeleteTab(IntPtr hwnd);
16 |
17 | void ActivateTab(IntPtr hwnd);
18 |
19 | void SetActiveAlt(IntPtr hwnd);
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/ITaskbarList2.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Runtime.InteropServices;
3 |
4 | namespace Standard
5 | {
6 | [Guid("602D4995-B13A-429b-A66E-1935E44F4317")]
7 | [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
8 | [ComImport]
9 | public interface ITaskbarList2 : ITaskbarList
10 | {
11 | void MarkFullscreenWindow(IntPtr hwnd, [MarshalAs(UnmanagedType.Bool)] bool fFullscreen);
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/ITaskbarList3.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Runtime.InteropServices;
3 |
4 | namespace Standard
5 | {
6 | [Guid("ea1afb91-9e28-4b86-90e9-9e9f8a5eefaf")]
7 | [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
8 | [ComImport]
9 | public interface ITaskbarList3 : ITaskbarList2, ITaskbarList
10 | {
11 | [PreserveSig]
12 | HRESULT SetProgressValue(IntPtr hwnd, ulong ullCompleted, ulong ullTotal);
13 |
14 | [PreserveSig]
15 | HRESULT SetProgressState(IntPtr hwnd, TBPF tbpFlags);
16 |
17 | [PreserveSig]
18 | HRESULT RegisterTab(IntPtr hwndTab, IntPtr hwndMDI);
19 |
20 | [PreserveSig]
21 | HRESULT UnregisterTab(IntPtr hwndTab);
22 |
23 | [PreserveSig]
24 | HRESULT SetTabOrder(IntPtr hwndTab, IntPtr hwndInsertBefore);
25 |
26 | [PreserveSig]
27 | HRESULT SetTabActive(IntPtr hwndTab, IntPtr hwndMDI, uint dwReserved);
28 |
29 | [PreserveSig]
30 | HRESULT ThumbBarAddButtons(IntPtr hwnd, uint cButtons, [MarshalAs(UnmanagedType.LPArray, SizeParamIndex = 1)] THUMBBUTTON[] pButtons);
31 |
32 | [PreserveSig]
33 | HRESULT ThumbBarUpdateButtons(IntPtr hwnd, uint cButtons, [MarshalAs(UnmanagedType.LPArray, SizeParamIndex = 1)] THUMBBUTTON[] pButtons);
34 |
35 | [PreserveSig]
36 | HRESULT ThumbBarSetImageList(IntPtr hwnd, [MarshalAs(UnmanagedType.IUnknown)] object himl);
37 |
38 | [PreserveSig]
39 | HRESULT SetOverlayIcon(IntPtr hwnd, IntPtr hIcon, [MarshalAs(UnmanagedType.LPWStr)] string pszDescription);
40 |
41 | [PreserveSig]
42 | HRESULT SetThumbnailTooltip(IntPtr hwnd, [MarshalAs(UnmanagedType.LPWStr)] string pszTip);
43 |
44 | [PreserveSig]
45 | HRESULT SetThumbnailClip(IntPtr hwnd, RefRECT prcClip);
46 | }
47 | }
48 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/ITaskbarList4.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Runtime.InteropServices;
3 |
4 | namespace Standard
5 | {
6 | [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
7 | [Guid("ea1afb91-9e28-4b86-90e9-9e9f8a5eefaf")]
8 | [ComImport]
9 | public interface ITaskbarList4 : ITaskbarList3, ITaskbarList2, ITaskbarList
10 | {
11 | void SetTabProperties(IntPtr hwndTab, STPF stpFlags);
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/KDC.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum KDC
4 | {
5 | FREQUENT = 1,
6 | RECENT
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/LOGFONT.cs:
--------------------------------------------------------------------------------
1 | using System.Runtime.InteropServices;
2 |
3 | namespace Standard
4 | {
5 | [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Unicode)]
6 | public struct LOGFONT
7 | {
8 | public int lfHeight;
9 |
10 | public int lfWidth;
11 |
12 | public int lfEscapement;
13 |
14 | public int lfOrientation;
15 |
16 | public int lfWeight;
17 |
18 | public byte lfItalic;
19 |
20 | public byte lfUnderline;
21 |
22 | public byte lfStrikeOut;
23 |
24 | public byte lfCharSet;
25 |
26 | public byte lfOutPrecision;
27 |
28 | public byte lfClipPrecision;
29 |
30 | public byte lfQuality;
31 |
32 | public byte lfPitchAndFamily;
33 |
34 | [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 32)]
35 | public string lfFaceName;
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/MARGINS.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public struct MARGINS
4 | {
5 | public int cxLeftWidth;
6 |
7 | public int cxRightWidth;
8 |
9 | public int cyTopHeight;
10 |
11 | public int cyBottomHeight;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/MF.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Standard
4 | {
5 | [Flags]
6 | public enum MF : uint
7 | {
8 | DOES_NOT_EXIST = 4294967295U,
9 | ENABLED = 0U,
10 | BYCOMMAND = 0U,
11 | GRAYED = 1U,
12 | DISABLED = 2U
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/MINMAXINFO.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public struct MINMAXINFO
4 | {
5 | //public MINMAXINFO(POINT ptReserved, POINT ptMaxSize, POINT ptMaxPosition, POINT ptMinTrackSize, POINT ptMaxTrackSize)
6 | //{
7 | // this.ptReserved = ptReserved;
8 | // this.ptMaxSize = ptMaxSize;
9 | // this.ptMaxPosition = ptMaxPosition;
10 | // this.ptMinTrackSize = ptMinTrackSize;
11 | // this.ptMaxTrackSize = ptMaxTrackSize;
12 | //}
13 |
14 | public POINT ptReserved;
15 |
16 | public POINT ptMaxSize;
17 |
18 | public POINT ptMaxPosition;
19 |
20 | public POINT ptMinTrackSize;
21 |
22 | public POINT ptMaxTrackSize;
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/MONITORINFO.cs:
--------------------------------------------------------------------------------
1 | using System.Runtime.InteropServices;
2 |
3 | namespace Standard
4 | {
5 | [StructLayout(LayoutKind.Sequential)]
6 | public class MONITORINFO
7 | {
8 | public int cbSize = Marshal.SizeOf(typeof(MONITORINFO));
9 |
10 | public RECT rcMonitor;
11 |
12 | public RECT rcWork;
13 |
14 | public int dwFlags;
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/MOUSEEVENTF.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum MOUSEEVENTF
4 | {
5 | LEFTDOWN = 2,
6 | LEFTUP = 4
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/MOUSEINPUT.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Standard
4 | {
5 | public struct MOUSEINPUT
6 | {
7 | #pragma warning disable 0649
8 |
9 | public int dx;
10 |
11 | public int dy;
12 |
13 | public int mouseData;
14 |
15 | public int dwFlags;
16 |
17 | public int time;
18 |
19 | public IntPtr dwExtraInfo;
20 |
21 | #pragma warning restore 0649
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/MSGFLT.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum MSGFLT
4 | {
5 | RESET,
6 | ALLOW,
7 | DISALLOW
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/MSGFLTINFO.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum MSGFLTINFO
4 | {
5 | NONE,
6 | ALREADYALLOWED_FORWND,
7 | ALREADYDISALLOWED_FORWND,
8 | ALLOWED_HIGHER
9 | }
10 | }
11 |
12 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/MessageHandler.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Standard
4 | {
5 | public delegate IntPtr MessageHandler(WM uMsg, IntPtr wParam, IntPtr lParam, out bool handled);
6 | }
7 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/NIF.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Standard
4 | {
5 | [Flags]
6 | public enum NIF : uint
7 | {
8 | MESSAGE = 1U,
9 | ICON = 2U,
10 | TIP = 4U,
11 | STATE = 8U,
12 | INFO = 16U,
13 | GUID = 32U,
14 | REALTIME = 64U,
15 | SHOWTIP = 128U,
16 | XP_MASK = 59U,
17 | VISTA_MASK = 251U
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/NIIF.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum NIIF
4 | {
5 | NONE,
6 | INFO,
7 | WARNING,
8 | ERROR,
9 | USER,
10 | NOSOUND = 16,
11 | LARGE_ICON = 32,
12 | NIIF_RESPECT_QUIET_TIME = 128,
13 | XP_ICON_MASK = 15
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/NIM.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum NIM : uint
4 | {
5 | ADD,
6 | MODIFY,
7 | DELETE,
8 | SETFOCUS,
9 | SETVERSION
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/NONCLIENTMETRICS.cs:
--------------------------------------------------------------------------------
1 | using System.Diagnostics.CodeAnalysis;
2 | using System.Runtime.InteropServices;
3 |
4 | namespace Standard
5 | {
6 | public struct NONCLIENTMETRICS
7 | {
8 | [SuppressMessage("Microsoft.Security", "CA2122:DoNotIndirectlyExposeMethodsWithLinkDemands")]
9 | public static NONCLIENTMETRICS VistaMetricsStruct
10 | {
11 | get
12 | {
13 | return new NONCLIENTMETRICS
14 | {
15 | cbSize = Marshal.SizeOf(typeof(NONCLIENTMETRICS))
16 | };
17 | }
18 | }
19 |
20 | [SuppressMessage("Microsoft.Security", "CA2122:DoNotIndirectlyExposeMethodsWithLinkDemands")]
21 | public static NONCLIENTMETRICS XPMetricsStruct
22 | {
23 | get
24 | {
25 | return new NONCLIENTMETRICS
26 | {
27 | cbSize = Marshal.SizeOf(typeof(NONCLIENTMETRICS)) - 4
28 | };
29 | }
30 | }
31 |
32 | public int cbSize;
33 |
34 | public int iBorderWidth;
35 |
36 | public int iScrollWidth;
37 |
38 | public int iScrollHeight;
39 |
40 | public int iCaptionWidth;
41 |
42 | public int iCaptionHeight;
43 |
44 | public LOGFONT lfCaptionFont;
45 |
46 | public int iSmCaptionWidth;
47 |
48 | public int iSmCaptionHeight;
49 |
50 | public LOGFONT lfSmCaptionFont;
51 |
52 | public int iMenuWidth;
53 |
54 | public int iMenuHeight;
55 |
56 | public LOGFONT lfMenuFont;
57 |
58 | public LOGFONT lfStatusFont;
59 |
60 | public LOGFONT lfMessageFont;
61 |
62 | public int iPaddedBorderWidth;
63 | }
64 | }
65 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/NOTIFYICONDATA.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Diagnostics.CodeAnalysis;
3 | using System.Runtime.InteropServices;
4 |
5 | namespace Standard
6 | {
7 | [SuppressMessage("Microsoft.Performance", "CA1812:AvoidUninstantiatedInternalClasses")]
8 | [StructLayout(LayoutKind.Sequential)]
9 | public class NOTIFYICONDATA
10 | {
11 | public int cbSize;
12 |
13 | public IntPtr hWnd;
14 |
15 | public int uID;
16 |
17 | public NIF uFlags;
18 |
19 | public int uCallbackMessage;
20 |
21 | public IntPtr hIcon;
22 |
23 | [MarshalAs(UnmanagedType.ByValArray, SizeConst = 128)]
24 | public char[] szTip = new char[128];
25 |
26 | public uint dwState;
27 |
28 | public uint dwStateMask;
29 |
30 | [MarshalAs(UnmanagedType.ByValArray, SizeConst = 256)]
31 | public char[] szInfo = new char[256];
32 |
33 | public uint uVersion;
34 |
35 | [MarshalAs(UnmanagedType.ByValArray, SizeConst = 64)]
36 | public char[] szInfoTitle = new char[64];
37 |
38 | public uint dwInfoFlags;
39 |
40 | public Guid guidItem;
41 |
42 | private IntPtr hBalloonIcon;
43 | }
44 | }
45 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/OLECMDEXECOPT.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum OLECMDEXECOPT
4 | {
5 | DODEFAULT,
6 | PROMPTUSER,
7 | DONTPROMPTUSER,
8 | SHOWHELP
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/OLECMDF.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum OLECMDF
4 | {
5 | SUPPORTED = 1,
6 | ENABLED,
7 | LATCHED = 4,
8 | NINCHED = 8,
9 | INVISIBLE = 16,
10 | DEFHIDEONCTXTMENU = 32
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/OLECMDID.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum OLECMDID
4 | {
5 | OPEN = 1,
6 | NEW,
7 | SAVE,
8 | SAVEAS,
9 | SAVECOPYAS,
10 | PRINT,
11 | PRINTPREVIEW,
12 | PAGESETUP,
13 | SPELL,
14 | PROPERTIES,
15 | CUT,
16 | COPY,
17 | PASTE,
18 | PASTESPECIAL,
19 | UNDO,
20 | REDO,
21 | SELECTALL,
22 | CLEARSELECTION,
23 | ZOOM,
24 | GETZOOMRANGE,
25 | UPDATECOMMANDS,
26 | REFRESH,
27 | STOP,
28 | HIDETOOLBARS,
29 | SETPROGRESSMAX,
30 | SETPROGRESSPOS,
31 | SETPROGRESSTEXT,
32 | SETTITLE,
33 | SETDOWNLOADSTATE,
34 | STOPDOWNLOAD,
35 | ONTOOLBARACTIVATED,
36 | FIND,
37 | DELETE,
38 | HTTPEQUIV,
39 | HTTPEQUIV_DONE,
40 | ENABLE_INTERACTION,
41 | ONUNLOAD,
42 | PROPERTYBAG2,
43 | PREREFRESH,
44 | SHOWSCRIPTERROR,
45 | SHOWMESSAGE,
46 | SHOWFIND,
47 | SHOWPAGESETUP,
48 | SHOWPRINT,
49 | CLOSE,
50 | ALLOWUILESSSAVEAS,
51 | DONTDOWNLOADCSS,
52 | UPDATEPAGESTATUS,
53 | PRINT2,
54 | PRINTPREVIEW2,
55 | SETPRINTTEMPLATE,
56 | GETPRINTTEMPLATE,
57 | PAGEACTIONBLOCKED = 55,
58 | PAGEACTIONUIQUERY,
59 | FOCUSVIEWCONTROLS,
60 | FOCUSVIEWCONTROLSQUERY,
61 | SHOWPAGEACTIONMENU
62 | }
63 | }
64 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/PKEY.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Runtime.InteropServices;
3 |
4 | namespace Standard
5 | {
6 | [StructLayout(LayoutKind.Sequential, Pack = 4)]
7 | public struct PKEY
8 | {
9 | public PKEY(Guid fmtid, uint pid)
10 | {
11 | this._fmtid = fmtid;
12 | this._pid = pid;
13 | }
14 |
15 | private readonly Guid _fmtid;
16 |
17 | private readonly uint _pid;
18 |
19 | public static readonly PKEY Title = new PKEY(new Guid("F29F85E0-4FF9-1068-AB91-08002B27B3D9"), 2U);
20 |
21 | public static readonly PKEY AppUserModel_ID = new PKEY(new Guid("9F4C2855-9F79-4B39-A8D0-E1D42DE1D5F3"), 5U);
22 |
23 | public static readonly PKEY AppUserModel_IsDestListSeparator = new PKEY(new Guid("9F4C2855-9F79-4B39-A8D0-E1D42DE1D5F3"), 6U);
24 |
25 | public static readonly PKEY AppUserModel_RelaunchCommand = new PKEY(new Guid("9F4C2855-9F79-4B39-A8D0-E1D42DE1D5F3"), 2U);
26 |
27 | public static readonly PKEY AppUserModel_RelaunchDisplayNameResource = new PKEY(new Guid("9F4C2855-9F79-4B39-A8D0-E1D42DE1D5F3"), 4U);
28 |
29 | public static readonly PKEY AppUserModel_RelaunchIconResource = new PKEY(new Guid("9F4C2855-9F79-4B39-A8D0-E1D42DE1D5F3"), 3U);
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/POINT.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public struct POINT
4 | {
5 | public int x;
6 |
7 | public int y;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/READYSTATE.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum READYSTATE
4 | {
5 | UNINITIALIZED,
6 | LOADING,
7 | LOADED,
8 | INTERACTIVE,
9 | COMPLETE
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/RGBQUAD.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public struct RGBQUAD
4 | {
5 | public byte rgbBlue;
6 |
7 | public byte rgbGreen;
8 |
9 | public byte rgbRed;
10 |
11 | public byte rgbReserved;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/RGN.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum RGN
4 | {
5 | AND = 1,
6 | OR,
7 | XOR,
8 | DIFF,
9 | COPY
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/RefPOINT.cs:
--------------------------------------------------------------------------------
1 | using System.Diagnostics.CodeAnalysis;
2 | using System.Runtime.InteropServices;
3 |
4 | namespace Standard
5 | {
6 | [SuppressMessage("Microsoft.Performance", "CA1812:AvoidUninstantiatedInternalClasses")]
7 | [StructLayout(LayoutKind.Sequential)]
8 | public class RefPOINT
9 | {
10 | public int x;
11 |
12 | public int y;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/SC.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum SC
4 | {
5 | SIZE = 61440,
6 | MOVE = 61456,
7 | MINIMIZE = 61472,
8 | MAXIMIZE = 61488,
9 | NEXTWINDOW = 61504,
10 | PREVWINDOW = 61520,
11 | CLOSE = 61536,
12 | VSCROLL = 61552,
13 | HSCROLL = 61568,
14 | MOUSEMENU = 61584,
15 | KEYMENU = 61696,
16 | ARRANGE = 61712,
17 | RESTORE = 61728,
18 | TASKLIST = 61744,
19 | SCREENSAVE = 61760,
20 | HOTKEY = 61776,
21 | DEFAULT = 61792,
22 | MONITORPOWER = 61808,
23 | CONTEXTHELP = 61824,
24 | SEPARATOR = 61455,
25 | F_ISSECURE = 1,
26 | ICON = 61472,
27 | ZOOM = 61488
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/SFGAO.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Standard
4 | {
5 | [Flags]
6 | public enum SFGAO : uint
7 | {
8 | CANCOPY = 1U,
9 | CANMOVE = 2U,
10 | CANLINK = 4U,
11 | STORAGE = 8U,
12 | CANRENAME = 16U,
13 | CANDELETE = 32U,
14 | HASPROPSHEET = 64U,
15 | DROPTARGET = 256U,
16 | CAPABILITYMASK = 375U,
17 | ENCRYPTED = 8192U,
18 | ISSLOW = 16384U,
19 | GHOSTED = 32768U,
20 | LINK = 65536U,
21 | SHARE = 131072U,
22 | READONLY = 262144U,
23 | HIDDEN = 524288U,
24 | DISPLAYATTRMASK = 1032192U,
25 | FILESYSANCESTOR = 268435456U,
26 | FOLDER = 536870912U,
27 | FILESYSTEM = 1073741824U,
28 | HASSUBFOLDER = 2147483648U,
29 | CONTENTSMASK = 2147483648U,
30 | VALIDATE = 16777216U,
31 | REMOVABLE = 33554432U,
32 | COMPRESSED = 67108864U,
33 | BROWSABLE = 134217728U,
34 | NONENUMERATED = 1048576U,
35 | NEWCONTENT = 2097152U,
36 | CANMONIKER = 4194304U,
37 | HASSTORAGE = 4194304U,
38 | STREAM = 4194304U,
39 | STORAGEANCESTOR = 8388608U,
40 | STORAGECAPMASK = 1891958792U,
41 | PKEYSFGAOMASK = 2164539392U
42 | }
43 | }
44 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/SHARD.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum SHARD
4 | {
5 | PIDL = 1,
6 | PATHA,
7 | PATHW,
8 | APPIDINFO,
9 | APPIDINFOIDLIST,
10 | LINK,
11 | APPIDINFOLINK
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/SHARDAPPIDINFO.cs:
--------------------------------------------------------------------------------
1 | using System.Diagnostics.CodeAnalysis;
2 | using System.Runtime.InteropServices;
3 |
4 | namespace Standard
5 | {
6 | [SuppressMessage("Microsoft.Performance", "CA1812:AvoidUninstantiatedInternalClasses")]
7 | [StructLayout(LayoutKind.Sequential, Pack = 4)]
8 | public class SHARDAPPIDINFO
9 | {
10 | [MarshalAs(UnmanagedType.Interface)]
11 | private object psi;
12 |
13 | [MarshalAs(UnmanagedType.LPWStr)]
14 | private string pszAppID;
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/SHARDAPPIDINFOIDLIST.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Diagnostics.CodeAnalysis;
3 | using System.Runtime.InteropServices;
4 |
5 | namespace Standard
6 | {
7 | [SuppressMessage("Microsoft.Performance", "CA1812:AvoidUninstantiatedInternalClasses")]
8 | [StructLayout(LayoutKind.Sequential, Pack = 4)]
9 | public class SHARDAPPIDINFOIDLIST
10 | {
11 | private IntPtr pidl;
12 |
13 | [MarshalAs(UnmanagedType.LPWStr)]
14 | private string pszAppID;
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/SHARDAPPIDINFOLINK.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Diagnostics.CodeAnalysis;
3 | using System.Runtime.InteropServices;
4 |
5 | namespace Standard
6 | {
7 | [SuppressMessage("Microsoft.Performance", "CA1812:AvoidUninstantiatedInternalClasses")]
8 | [StructLayout(LayoutKind.Sequential, Pack = 4)]
9 | public class SHARDAPPIDINFOLINK
10 | {
11 | private IntPtr psl;
12 |
13 | [MarshalAs(UnmanagedType.LPWStr)]
14 | private string pszAppID;
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/SHCONTF.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum SHCONTF
4 | {
5 | CHECKING_FOR_CHILDREN = 16,
6 | FOLDERS = 32,
7 | NONFOLDERS = 64,
8 | INCLUDEHIDDEN = 128,
9 | INIT_ON_FIRST_NEXT = 256,
10 | NETPRINTERSRCH = 512,
11 | SHAREABLE = 1024,
12 | STORAGE = 2048,
13 | NAVIGATION_ENUM = 4096,
14 | FASTITEMS = 8192,
15 | FLATLIST = 16384,
16 | ENABLE_ASYNC = 32768
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/SHFILEOPSTRUCT.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Runtime.InteropServices;
3 |
4 | namespace Standard
5 | {
6 | [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Unicode, Pack = 1)]
7 | public struct SHFILEOPSTRUCT
8 | {
9 | public IntPtr hwnd;
10 |
11 | [MarshalAs(UnmanagedType.U4)]
12 | public FO wFunc;
13 |
14 | public string pFrom;
15 |
16 | public string pTo;
17 |
18 | [MarshalAs(UnmanagedType.U2)]
19 | public FOF fFlags;
20 |
21 | [MarshalAs(UnmanagedType.Bool)]
22 | public int fAnyOperationsAborted;
23 |
24 | public IntPtr hNameMappings;
25 |
26 | public string lpszProgressTitle;
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/SHGDN.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Standard
4 | {
5 | [Flags]
6 | public enum SHGDN
7 | {
8 | SHGDN_NORMAL = 0,
9 | SHGDN_INFOLDER = 1,
10 | SHGDN_FOREDITING = 4096,
11 | SHGDN_FORADDRESSBAR = 16384,
12 | SHGDN_FORPARSING = 32768
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/SIATTRIBFLAGS.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum SIATTRIBFLAGS
4 | {
5 | AND = 1,
6 | OR,
7 | APPCOMPAT
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/SICHINT.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum SICHINT : uint
4 | {
5 | DISPLAY,
6 | ALLFIELDS = 2147483648U,
7 | CANONICAL = 268435456U,
8 | TEST_FILESYSPATH_IF_NOT_EQUAL = 536870912U
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/SIGDN.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum SIGDN : uint
4 | {
5 | NORMALDISPLAY,
6 | PARENTRELATIVEPARSING = 2147581953U,
7 | DESKTOPABSOLUTEPARSING = 2147647488U,
8 | PARENTRELATIVEEDITING = 2147684353U,
9 | DESKTOPABSOLUTEEDITING = 2147794944U,
10 | FILESYSPATH = 2147844096U,
11 | URL = 2147909632U,
12 | PARENTRELATIVEFORADDRESSBAR = 2147991553U,
13 | PARENTRELATIVE = 2148007937U
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/SIZE.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public struct SIZE
4 | {
5 | public int cx;
6 |
7 | public int cy;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/SLGP.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Standard
4 | {
5 | [Flags]
6 | public enum SLGP
7 | {
8 | SHORTPATH = 1,
9 | UNCPRIORITY = 2,
10 | RAWPATH = 4
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/SM.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum SM
4 | {
5 | CXSCREEN,
6 | CYSCREEN,
7 | CXVSCROLL,
8 | CYHSCROLL,
9 | CYCAPTION,
10 | CXBORDER,
11 | CYBORDER,
12 | CXFIXEDFRAME,
13 | CYFIXEDFRAME,
14 | CYVTHUMB,
15 | CXHTHUMB,
16 | CXICON,
17 | CYICON,
18 | CXCURSOR,
19 | CYCURSOR,
20 | CYMENU,
21 | CXFULLSCREEN,
22 | CYFULLSCREEN,
23 | CYKANJIWINDOW,
24 | MOUSEPRESENT,
25 | CYVSCROLL,
26 | CXHSCROLL,
27 | DEBUG,
28 | SWAPBUTTON,
29 | CXMIN = 28,
30 | CYMIN,
31 | CXSIZE,
32 | CYSIZE,
33 | CXFRAME,
34 | CXSIZEFRAME = 32,
35 | CYFRAME,
36 | CYSIZEFRAME = 33,
37 | CXMINTRACK,
38 | CYMINTRACK,
39 | CXDOUBLECLK,
40 | CYDOUBLECLK,
41 | CXICONSPACING,
42 | CYICONSPACING,
43 | MENUDROPALIGNMENT,
44 | PENWINDOWS,
45 | DBCSENABLED,
46 | CMOUSEBUTTONS,
47 | SECURE,
48 | CXEDGE,
49 | CYEDGE,
50 | CXMINSPACING,
51 | CYMINSPACING,
52 | CXSMICON,
53 | CYSMICON,
54 | CYSMCAPTION,
55 | CXSMSIZE,
56 | CYSMSIZE,
57 | CXMENUSIZE,
58 | CYMENUSIZE,
59 | ARRANGE,
60 | CXMINIMIZED,
61 | CYMINIMIZED,
62 | CXMAXTRACK,
63 | CYMAXTRACK,
64 | CXMAXIMIZED,
65 | CYMAXIMIZED,
66 | NETWORK,
67 | CLEANBOOT = 67,
68 | CXDRAG,
69 | CYDRAG,
70 | SHOWSOUNDS,
71 | CXMENUCHECK,
72 | CYMENUCHECK,
73 | SLOWMACHINE,
74 | MIDEASTENABLED,
75 | MOUSEWHEELPRESENT,
76 | XVIRTUALSCREEN,
77 | YVIRTUALSCREEN,
78 | CXVIRTUALSCREEN,
79 | CYVIRTUALSCREEN,
80 | CMONITORS,
81 | SAMEDISPLAYFORMAT,
82 | IMMENABLED,
83 | CXFOCUSBORDER,
84 | CYFOCUSBORDER,
85 | TABLETPC = 86,
86 | MEDIACENTER,
87 | REMOTESESSION = 4096,
88 | REMOTECONTROL = 8193
89 | }
90 | }
91 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/SPIF.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Standard
4 | {
5 | [Flags]
6 | public enum SPIF
7 | {
8 | None = 0,
9 | UPDATEINIFILE = 1,
10 | SENDCHANGE = 2,
11 | SENDWININICHANGE = 2
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/STATE_SYSTEM.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Standard
4 | {
5 | [Flags]
6 | public enum STATE_SYSTEM
7 | {
8 | UNAVAILABLE = 1,
9 | SELECTED = 2,
10 | FOCUSED = 4,
11 | PRESSED = 8,
12 | CHECKED = 16,
13 | MIXED = 32,
14 | INDETERMINATE = 32,
15 | READONLY = 64,
16 | HOTTRACKED = 128,
17 | DEFAULT = 256,
18 | EXPANDED = 512,
19 | COLLAPSED = 1024,
20 | BUSY = 2048,
21 | FLOATING = 4096,
22 | MARQUEED = 8192,
23 | ANIMATED = 16384,
24 | INVISIBLE = 32768,
25 | OFFSCREEN = 65536,
26 | SIZEABLE = 131072,
27 | MOVEABLE = 262144,
28 | SELFVOICING = 524288,
29 | FOCUSABLE = 1048576,
30 | SELECTABLE = 2097152,
31 | LINKED = 4194304,
32 | TRAVERSED = 8388608,
33 | MULTISELECTABLE = 16777216,
34 | EXTSELECTABLE = 33554432,
35 | ALERT_LOW = 67108864,
36 | ALERT_MEDIUM = 134217728,
37 | ALERT_HIGH = 268435456,
38 | PROTECTED = 536870912,
39 | VALID = 1073741823
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/STPF.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Standard
4 | {
5 | [Flags]
6 | public enum STPF
7 | {
8 | NONE = 0,
9 | USEAPPTHUMBNAILALWAYS = 1,
10 | USEAPPTHUMBNAILWHENACTIVE = 2,
11 | USEAPPPEEKALWAYS = 4,
12 | USEAPPPEEKWHENACTIVE = 8
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/STR_GPS.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public static class STR_GPS
4 | {
5 | public const string HANDLERPROPERTIESONLY = "GPS_HANDLERPROPERTIESONLY";
6 |
7 | public const string FASTPROPERTIESONLY = "GPS_FASTPROPERTIESONLY";
8 |
9 | public const string OPENSLOWITEM = "GPS_OPENSLOWITEM";
10 |
11 | public const string DELAYCREATION = "GPS_DELAYCREATION";
12 |
13 | public const string BESTEFFORT = "GPS_BESTEFFORT";
14 |
15 | public const string NO_OPLOCK = "GPS_NO_OPLOCK";
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/SW.cs:
--------------------------------------------------------------------------------
1 | namespace Standard
2 | {
3 | public enum SW
4 | {
5 | HIDE,
6 | SHOWNORMAL,
7 | NORMAL = 1,
8 | SHOWMINIMIZED,
9 | SHOWMAXIMIZED,
10 | MAXIMIZE = 3,
11 | SHOWNOACTIVATE,
12 | SHOW,
13 | MINIMIZE,
14 | SHOWMINNOACTIVE,
15 | SHOWNA,
16 | RESTORE,
17 | SHOWDEFAULT,
18 | FORCEMINIMIZE
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/SWP.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Standard
4 | {
5 | [Flags]
6 | public enum SWP
7 | {
8 | ASYNCWINDOWPOS = 16384,
9 | DEFERERASE = 8192,
10 | DRAWFRAME = 32,
11 | FRAMECHANGED = 32,
12 | HIDEWINDOW = 128,
13 | NOACTIVATE = 16,
14 | NOCOPYBITS = 256,
15 | NOMOVE = 2,
16 | NOOWNERZORDER = 512,
17 | NOREDRAW = 8,
18 | NOREPOSITION = 512,
19 | NOSENDCHANGING = 1024,
20 | NOSIZE = 1,
21 | NOZORDER = 4,
22 | SHOWWINDOW = 64
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/src/WPFDevelopers.Minimal/Microsoft.Windows.Shell/Standard/SafeConnectionPointCookie.cs:
--------------------------------------------------------------------------------
1 | using Microsoft.Win32.SafeHandles;
2 | using System;
3 | using System.Diagnostics.CodeAnalysis;
4 | using System.Runtime.ConstrainedExecution;
5 | using System.Runtime.InteropServices.ComTypes;
6 |
7 | namespace Standard
8 | {
9 | public sealed class SafeConnectionPointCookie : SafeHandleZeroOrMinusOneIsInvalid
10 | {
11 | [SuppressMessage("Microsoft.Naming", "CA2204:Literals should be spelled correctly", MessageId = "IConnectionPoint")]
12 | [SuppressMessage("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
13 | public SafeConnectionPointCookie(IConnectionPointContainer target, object sink, Guid eventId) : base(true)
14 | {
15 | Verify.IsNotNull(target, "target");
16 | Verify.IsNotNull