Skip to content

Latest commit

 

History

History
42 lines (38 loc) · 2.91 KB

File metadata and controls

42 lines (38 loc) · 2.91 KB

Development

Project Setup

  • Build a Windows Presentation Foundation (WPF) Blazor app
  • Setup Routing
  • Add MudBlazor
  • Add Microsoft Win32 API C# Source Generator
    • Parent Project: win32metadata
    • Getting Started
    • List desired Native Methods in NativeMethods.txt
      • Exported method name (e.g. CreateFile). This may include the A or W suffix, where applicable. This may be qualified with a namespace but is only recommended in cases of ambiguity, which CsWin32 will prompt where appropriate.
      • A macro name (e.g. HRESULT_FROM_WIN32). These are generated into the same class with extern methods. Macros must be hand-authored into CsWin32, so let us know if you want to see a macro added.
      • A namespace to generate all APIs from (e.g. Windows.Win32.Storage.FileSystem would search the metadata for all APIs within that namespace and generate them).
      • Module name followed by .* to generate all methods exported from that module (e.g. Kernel32.*).
      • The name of a struct, enum, constant or interface to generate. This may be qualified with a namespace but is only recommended in cases of ambiguity, which CsWin32 will prompt where appropriate.
      • A prefix shared by many constants, followed by *, to generate all constants that share that prefix (e.g. ALG_SID_MD*).
      • A comment (i.e. any line starting with //) or white space line, which will be ignored.
    • Debug:
      • Check generated files at:
        • <Project>
          • Dependencies
            • .NET <X.Y>
              • Source Generators
                • Microsoft.Windows.CsWin32.SourceGenerator.CsWin32SourceGenerator
  • Programming reference for the Win32 API
  • Setup Dependency Injection
  • Setup Window Blur

Tools

  • seq
  • seqcli
    • Install: dotnet tool install -g seqcli
    • Import log file: seqcli ingest -i <path/to/log.log> --json (not working for me right now, weird errors)