Skip to content

Commit

Permalink
2023.12.23.0100
Browse files Browse the repository at this point in the history
Added: SHFB
Changed: COM.Classes
Changed: index
  • Loading branch information
Holger Boskugel authored and Holger Boskugel committed Dec 23, 2023
1 parent ebb21b2 commit a1e9d9e
Show file tree
Hide file tree
Showing 3 changed files with 36 additions and 4 deletions.
8 changes: 4 additions & 4 deletions General.NET/COM.Classes.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,10 @@
- Optionally use of [`ProgIdAttribute`](https://learn.microsoft.com/en-us/dotnet/api/system.runtime.interopservices.progidattribute)
- Class must have a parameterless constructor
- It seems, that the first impleted interface will be taken for COM?
- No generic base classes or first generic interfaces allowed
- No generic base classes or first generic interfaces (without inherited none generic interface) allowed
- Only [`public`](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/public)
members are accessible under COM (no [`protected`](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/protected) etc.)
- Inherited interface members mit be implemented again (with [`new`](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/new-modifier))
- Inherited interface members might be implemented again (with [`new`](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/new-modifier))
at inheriting interface
- Additional interfaces without reimplementation with [`new`](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/new-modifier)
are accessible only after specific cast (implement cast methods for that)
Expand All @@ -46,8 +46,8 @@
(type library exporter give them the [`DispId`](https://learn.microsoft.com/en-us/dotnet/api/system.runtime.interopservices.dispidattribute)
of [-4 / 0xFFFFFFFC](https://learn.microsoft.com/en-us/previous-versions/windows/desktop/automat/dispid-constants)
for a [_NewEnum implementation](https://learn.microsoft.com/de-de/office/vba/language/concepts/getting-started/using-for-eachnext-statements))
- Returning array with values needs to be of element type [`Object`](https://learn.microsoft.com/en-us/dotnet/api/system.object),
so `Linq` `Cast<Object>().ToArray()` would help here
- Handling arrays out and in with values needs to be of element type [`Object`](https://learn.microsoft.com/en-us/dotnet/api/system.object),
so `Linq` `Cast<Object>().ToArray()` would help here and for in correct cast then the incoming elements

- COM libraries without registration and without strong names are usable in/with manifests
(use tool [`MT`](https://learn.microsoft.com/en-us/windows/win32/sbscs/mt-exe) for that)
Expand Down
31 changes: 31 additions & 0 deletions SHFB.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
| [Index](index.md) |

<hr style="height: 1px" />

# Sandcastle Help File Builder (SHFB)

- [Building `HTML Help 1 (chm)` files](#building-html-help-1-chm-files)



## [Building `HTML Help 1 (chm)` files](#)

This output format is available only at `Build` in the `Presentation style` of `VS2013`.

> :warning: - **Important hint on paths**
>
> If the path to the working directory contains a `.h` or `.H` the compilation
> with the HTML Help File Compiler throw warnings of not being HTML and generates
> a bad `*.chm` file.
>
> Getting around this, choose a project path without a `.h` or `.H` *OR* set a
> path in `Paths` / `Output Paths` / `Help content output path` relative or absolute
> from your project that don't contains those character combination and let copy the
> result with the `Output Deployment` plugin to your project path.


<!-- FOOTER -->
<hr style="height: 1px" />
<span style="font-size: 0.7em">© SphereSoft.NET, Holger Boskugel, Berlin, Germany</span>
<a href="http://spheresoft.net" style="font-size: 0.7em; float: right">spheresoft.net</a>
1 change: 1 addition & 0 deletions index.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
[WPF (Windows Presentation Framework) .NET](WPF.NET.md)
[XSL(T)](XSLT.md)
[GITHub](GITHub.md)
[SHFB - Sandcastle Help File Builder](SHFB.md)
[Tools](Tools.md)


Expand Down

0 comments on commit a1e9d9e

Please sign in to comment.