diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b8600f19..4b2ff973 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -84,7 +84,9 @@ jobs: Corlib.Extensions/Corlib.Extensions.csproj \ PresentationCore.Extensions/PresentationCore.Extensions.csproj \ System.Drawing.Extensions/System.Drawing.Extensions.csproj \ - System.Windows.Forms.Extensions/System.Windows.Forms.Extensions.csproj; do + System.Windows.Forms.Extensions/System.Windows.Forms.Extensions.csproj \ + Microsoft.Win32.Extensions/Microsoft.Win32.Extensions.csproj \ + Microsoft.Office.Extensions/Microsoft.Office.Extensions.csproj; do tfm=$(sed -n 's/.*\([^<]*\).*/\1/p' "$p" | head -1 | tr ';' '\n' | tail -1) echo "::group::build $p ($tfm)" dotnet build "$p" --configuration Release -p:TargetFramework="$tfm" @@ -100,6 +102,8 @@ jobs: PresentationCore.Extensions/PresentationCore.Extensions.csproj System.Drawing.Extensions/System.Drawing.Extensions.csproj System.Windows.Forms.Extensions/System.Windows.Forms.Extensions.csproj + Microsoft.Win32.Extensions/Microsoft.Win32.Extensions.csproj + Microsoft.Office.Extensions/Microsoft.Office.Extensions.csproj # NB: tests run on WINDOWS ONLY — the test runner misbehaves on ubuntu (not # our code). Preserved verbatim from the original Tests.yml, including the diff --git a/Microsoft.Office.Extensions/Microsoft.Office.Extensions.csproj b/Microsoft.Office.Extensions/Microsoft.Office.Extensions.csproj index ea204304..a4e3c49c 100644 --- a/Microsoft.Office.Extensions/Microsoft.Office.Extensions.csproj +++ b/Microsoft.Office.Extensions/Microsoft.Office.Extensions.csproj @@ -3,6 +3,8 @@ FrameworkExtensions.Microsoft.Office Readme.md + https://github.com/Hawkynt/C--FrameworkExtensions + https://github.com/Hawkynt/C--FrameworkExtensions/tree/master/Microsoft.Office.Extensions true $(NoWarn);CS1591 diff --git a/Microsoft.Office.Extensions/REFERENCE.md b/Microsoft.Office.Extensions/REFERENCE.md new file mode 100644 index 00000000..8fcbe016 --- /dev/null +++ b/Microsoft.Office.Extensions/REFERENCE.md @@ -0,0 +1,106 @@ +# FrameworkExtensions.Microsoft.Office — API reference + +[← FrameworkExtensions.Microsoft.Office](https://github.com/Hawkynt/C--FrameworkExtensions/blob/main/Microsoft.Office.Extensions/Readme.md) + + + +> Every public and protected type and member, read from the built assembly and merged +> with its XML documentation. Generated — edit the XML docs in source, not this file. + +### Namespace `Microsoft.Office.Interop.Excel` + +[`ApplicationExtensions.AddToMru`](#applicationextensionsaddtomru) · [`ApplicationExtensions.Converter`](#applicationextensionsconverter) · [`ApplicationExtensions.CorruptLoad`](#applicationextensionscorruptload) · [`ApplicationExtensions.Edit`](#applicationextensionsedit) · [`ApplicationExtensions.Format`](#applicationextensionsformat) · [`ApplicationExtensions.IgnoreReadOnly`](#applicationextensionsignorereadonly) · [`ApplicationExtensions.Local`](#applicationextensionslocal) · [`ApplicationExtensions.Mode`](#applicationextensionsmode) · [`ApplicationExtensions.Notify`](#applicationextensionsnotify) · [`ApplicationExtensions.UpdateLinks`](#applicationextensionsupdatelinks) + +#### `ApplicationExtensions.AddToMru` + +True to add this workbook to the list of recently used files. The default value is False. + +| Value | Numeric | Summary | +| --- | --- | --- | +| `DontAddToMru` | `0` | | +| `AddToMru` | `1` | | + +#### `ApplicationExtensions.Converter` + +The index of the first file converter to try when opening the file. The specified file converter is tried first; if this converter doesnt recognize the file, all other converters are tried. The converter index consists of the row numbers of the converters returned by the FileConverters property. + +| Value | Numeric | Summary | +| --- | --- | --- | +| `Default` | `0` | | + +#### `ApplicationExtensions.CorruptLoad` + +| Value | Numeric | Summary | +| --- | --- | --- | +| `NormalLoad` | `0` | | +| `RepairFile` | `1` | | +| `ExtractData` | `2` | | + +#### `ApplicationExtensions.Edit` + +If the file is a Microsoft Excel 4.0 add-in, this argument is True to open the add-in so that its a visible window. If this argument is False or omitted, the add-in is opened as hidden, and it cannot be unhidden. This option doesn't apply to add-ins created in Microsoft Excel 5.0 or later. If the file is an Excel template, True to open the specified template for editing. False to open a new workbook based on the specified template. The default value is False. + +| Value | Numeric | Summary | +| --- | --- | --- | +| `NotEditable` | `0` | | +| `Editable` | `1` | | + +#### `ApplicationExtensions.Format` + +If Microsoft Excel is opening a text file, this argument specifies the delimiter character, as shown in the following table. If this argument is omitted, the current delimiter is used. + +| Value | Numeric | Summary | +| --- | --- | --- | +| `Tabs` | `1` | | +| `Commas` | `2` | | +| `Spaces` | `3` | | +| `Semicolons` | `4` | | +| `Nothing` | `5` | | +| `CustomCharacter` | `6` | | + +#### `ApplicationExtensions.IgnoreReadOnly` + +True to have Microsoft Excel not display the read-only recommended message (if the workbook was saved with the Read-Only Recommended option). + +| Value | Numeric | Summary | +| --- | --- | --- | +| `IgnoreReadOnlyRecommended` | `0` | | +| `DontIgnoreReadOnlyRecommended` | `1` | | + +#### `ApplicationExtensions.Local` + +True saves files against the language of Microsoft Excel (including control panel settings). False (default) saves files against the language of Visual Basic for Applications (VBA) (which is typically US English unless the VBA project where Workbooks.Open is run from is an old internationalized XL5/95 VBA project). + +| Value | Numeric | Summary | +| --- | --- | --- | +| `NotLocal` | `0` | | +| `Local` | `1` | | + +#### `ApplicationExtensions.Mode` + +True to open the workbook in read-only mode. + +| Value | Numeric | Summary | +| --- | --- | --- | +| `ReadOnly` | `0` | | +| `ReadWrite` | `1` | | + +#### `ApplicationExtensions.Notify` + +If the file cannot be opened in read/write mode, this argument is True to add the file to the file notification list. Microsoft Excel will open the file as read-only, poll the file notification list, and then notify the user when the file becomes available. If this argument is False or omitted, no notification is requested, and any attempts to open an unavailable file will fail. + +| Value | Numeric | Summary | +| --- | --- | --- | +| `DontNotify` | `0` | | +| `Notify` | `1` | | + +#### `ApplicationExtensions.UpdateLinks` + +Specifies the way links in the file are updated. If this argument is omitted, the user is prompted to specify how links will be updated. Otherwise, this argument is one of the values listed in the following table. + +| Value | Numeric | Summary | +| --- | --- | --- | +| `DontUpdate` | `0` | | +| `ExternalOnly` | `1` | | +| `RemoteOnly` | `2` | | +| `ExternalAndRemote` | `3` | | diff --git a/Microsoft.Office.Extensions/Readme.md b/Microsoft.Office.Extensions/Readme.md index 8089dc1b..28b3d33a 100644 --- a/Microsoft.Office.Extensions/Readme.md +++ b/Microsoft.Office.Extensions/Readme.md @@ -156,103 +156,7 @@ Console.WriteLine(fileInfo.LastWriteTime); // last modified -### Namespace `Microsoft.Office.Interop.Excel` - -[`ApplicationExtensions.AddToMru`](#applicationextensionsaddtomru) · [`ApplicationExtensions.Converter`](#applicationextensionsconverter) · [`ApplicationExtensions.CorruptLoad`](#applicationextensionscorruptload) · [`ApplicationExtensions.Edit`](#applicationextensionsedit) · [`ApplicationExtensions.Format`](#applicationextensionsformat) · [`ApplicationExtensions.IgnoreReadOnly`](#applicationextensionsignorereadonly) · [`ApplicationExtensions.Local`](#applicationextensionslocal) · [`ApplicationExtensions.Mode`](#applicationextensionsmode) · [`ApplicationExtensions.Notify`](#applicationextensionsnotify) · [`ApplicationExtensions.UpdateLinks`](#applicationextensionsupdatelinks) - -#### `ApplicationExtensions.AddToMru` - -True to add this workbook to the list of recently used files. The default value is False. - -| Value | Numeric | Summary | -| --- | --- | --- | -| `DontAddToMru` | `0` | | -| `AddToMru` | `1` | | - -#### `ApplicationExtensions.Converter` - -The index of the first file converter to try when opening the file. The specified file converter is tried first; if this converter doesnt recognize the file, all other converters are tried. The converter index consists of the row numbers of the converters returned by the FileConverters property. - -| Value | Numeric | Summary | -| --- | --- | --- | -| `Default` | `0` | | - -#### `ApplicationExtensions.CorruptLoad` - -| Value | Numeric | Summary | -| --- | --- | --- | -| `NormalLoad` | `0` | | -| `RepairFile` | `1` | | -| `ExtractData` | `2` | | - -#### `ApplicationExtensions.Edit` - -If the file is a Microsoft Excel 4.0 add-in, this argument is True to open the add-in so that its a visible window. If this argument is False or omitted, the add-in is opened as hidden, and it cannot be unhidden. This option doesn't apply to add-ins created in Microsoft Excel 5.0 or later. If the file is an Excel template, True to open the specified template for editing. False to open a new workbook based on the specified template. The default value is False. - -| Value | Numeric | Summary | -| --- | --- | --- | -| `NotEditable` | `0` | | -| `Editable` | `1` | | - -#### `ApplicationExtensions.Format` - -If Microsoft Excel is opening a text file, this argument specifies the delimiter character, as shown in the following table. If this argument is omitted, the current delimiter is used. - -| Value | Numeric | Summary | -| --- | --- | --- | -| `Tabs` | `1` | | -| `Commas` | `2` | | -| `Spaces` | `3` | | -| `Semicolons` | `4` | | -| `Nothing` | `5` | | -| `CustomCharacter` | `6` | | - -#### `ApplicationExtensions.IgnoreReadOnly` - -True to have Microsoft Excel not display the read-only recommended message (if the workbook was saved with the Read-Only Recommended option). - -| Value | Numeric | Summary | -| --- | --- | --- | -| `IgnoreReadOnlyRecommended` | `0` | | -| `DontIgnoreReadOnlyRecommended` | `1` | | - -#### `ApplicationExtensions.Local` - -True saves files against the language of Microsoft Excel (including control panel settings). False (default) saves files against the language of Visual Basic for Applications (VBA) (which is typically US English unless the VBA project where Workbooks.Open is run from is an old internationalized XL5/95 VBA project). - -| Value | Numeric | Summary | -| --- | --- | --- | -| `NotLocal` | `0` | | -| `Local` | `1` | | - -#### `ApplicationExtensions.Mode` - -True to open the workbook in read-only mode. - -| Value | Numeric | Summary | -| --- | --- | --- | -| `ReadOnly` | `0` | | -| `ReadWrite` | `1` | | - -#### `ApplicationExtensions.Notify` - -If the file cannot be opened in read/write mode, this argument is True to add the file to the file notification list. Microsoft Excel will open the file as read-only, poll the file notification list, and then notify the user when the file becomes available. If this argument is False or omitted, no notification is requested, and any attempts to open an unavailable file will fail. - -| Value | Numeric | Summary | -| --- | --- | --- | -| `DontNotify` | `0` | | -| `Notify` | `1` | | - -#### `ApplicationExtensions.UpdateLinks` - -Specifies the way links in the file are updated. If this argument is omitted, the user is prompted to specify how links will be updated. Otherwise, this argument is one of the values listed in the following table. - -| Value | Numeric | Summary | -| --- | --- | --- | -| `DontUpdate` | `0` | | -| `ExternalOnly` | `1` | | -| `RemoteOnly` | `2` | | -| `ExternalAndRemote` | `3` | | +Every public and protected member of all 10 types, generated from the built assembly and its XML documentation, is in [REFERENCE.md](https://github.com/Hawkynt/C--FrameworkExtensions/blob/main/Microsoft.Office.Extensions/REFERENCE.md). diff --git a/Microsoft.Win32.Extensions/Microsoft.Win32.Extensions.csproj b/Microsoft.Win32.Extensions/Microsoft.Win32.Extensions.csproj index 5338b20c..6c2b60fb 100644 --- a/Microsoft.Win32.Extensions/Microsoft.Win32.Extensions.csproj +++ b/Microsoft.Win32.Extensions/Microsoft.Win32.Extensions.csproj @@ -3,6 +3,8 @@ FrameworkExtensions.Microsoft.Win32 Readme.md + https://github.com/Hawkynt/C--FrameworkExtensions + https://github.com/Hawkynt/C--FrameworkExtensions/tree/master/Microsoft.Win32.Extensions true $(NoWarn);CS1591 diff --git a/Microsoft.Win32.Extensions/REFERENCE.md b/Microsoft.Win32.Extensions/REFERENCE.md new file mode 100644 index 00000000..863a05af --- /dev/null +++ b/Microsoft.Win32.Extensions/REFERENCE.md @@ -0,0 +1,21 @@ +# FrameworkExtensions.Microsoft.Win32 — API reference + +[← FrameworkExtensions.Microsoft.Win32](https://github.com/Hawkynt/C--FrameworkExtensions/blob/main/Microsoft.Win32.Extensions/Readme.md) + + + +> Every public and protected type and member, read from the built assembly and merged +> with its XML documentation. Generated — edit the XML docs in source, not this file. + +### Namespace `Microsoft.Win32` + +[`RegistryKeyExtensions`](#registrykeyextensions) + +#### `RegistryKeyExtensions` + +| Member | Signature | Summary | +| --- | --- | --- | +| `GetBaseKeyFromKeyName` | `static RegistryKey GetBaseKeyFromKeyName(string keyName, out string subKeyName)` | | +| `GetSubKeyName` | `static string GetSubKeyName(this RegistryKey @this)` | | +| `GetSubKeyPath` | `static string GetSubKeyPath(this RegistryKey @this)` | | +| `GetSubKeys` | `static IEnumerable GetSubKeys(this RegistryKey @this, bool recursive = false)` | | diff --git a/Microsoft.Win32.Extensions/Readme.md b/Microsoft.Win32.Extensions/Readme.md index 8dcbacb9..05d047b3 100644 --- a/Microsoft.Win32.Extensions/Readme.md +++ b/Microsoft.Win32.Extensions/Readme.md @@ -97,18 +97,7 @@ var baseKey = RegistryKeyExtensions.GetBaseKeyFromKeyName( -### Namespace `Microsoft.Win32` - -[`RegistryKeyExtensions`](#registrykeyextensions) - -#### `RegistryKeyExtensions` - -| Member | Signature | Summary | -| --- | --- | --- | -| `GetBaseKeyFromKeyName` | `static RegistryKey GetBaseKeyFromKeyName(string keyName, out string subKeyName)` | | -| `GetSubKeyName` | `static string GetSubKeyName(this RegistryKey @this)` | | -| `GetSubKeyPath` | `static string GetSubKeyPath(this RegistryKey @this)` | | -| `GetSubKeys` | `static IEnumerable GetSubKeys(this RegistryKey @this, bool recursive = false)` | | +Every public and protected member of all 1 type, generated from the built assembly and its XML documentation, is in [REFERENCE.md](https://github.com/Hawkynt/C--FrameworkExtensions/blob/main/Microsoft.Win32.Extensions/REFERENCE.md).