Skip to content

Consider publishing EventTraceKit.EventTracing/EventManifestFramework as library on NuGet #2

@ljani

Description

@ljani

Wow, great job with the library! It's such a hidden gem.

I'd like to build my own hacky tool around ETW and EventTraceKit.EventTracing is such a neat library for that. I'd suggest you to publish it to NuGet for everyone to consume. Microsoft.Diagnostics.Tracing.TraceEvent gets you the most basic use cases, but this library does it all.

If you plan to do it, please consider supporting netstandard2.0 TFM as well. This patch seems to make it compile, but I'm not sure if all of the features work correctly:

diff --git a/src/EventTraceKit.EventTracing/Compilation/CodeGen/CxxCodeGenerator.cs b/src/EventTraceKit.EventTracing/Compilation/CodeGen/CxxCodeGenerator.cs
index 4c69889..b4f5012 100644
--- a/src/EventTraceKit.EventTracing/Compilation/CodeGen/CxxCodeGenerator.cs
+++ b/src/EventTraceKit.EventTracing/Compilation/CodeGen/CxxCodeGenerator.cs
@@ -2,7 +2,7 @@ namespace EventTraceKit.EventTracing.Compilation.CodeGen
 {
     using System;
     using System.Collections.Generic;
-    using System.ComponentModel.Composition;
+    using System.Composition;
     using System.IO;
     using System.Linq;
     using System.Text;
diff --git a/src/EventTraceKit.EventTracing/Compilation/CodeGen/ICodeGenerator.cs b/src/EventTraceKit.EventTracing/Compilation/CodeGen/ICodeGenerator.cs
index 8c85c5c..726db00 100644
--- a/src/EventTraceKit.EventTracing/Compilation/CodeGen/ICodeGenerator.cs
+++ b/src/EventTraceKit.EventTracing/Compilation/CodeGen/ICodeGenerator.cs
@@ -1,7 +1,7 @@
 namespace EventTraceKit.EventTracing.Compilation.CodeGen
 {
     using System;
-    using System.ComponentModel.Composition;
+    using System.Composition;
     using System.IO;
     using EventTraceKit.EventTracing.Schema;

diff --git a/src/EventTraceKit.EventTracing/Compilation/CodeGen/McCodeGenerator.cs b/src/EventTraceKit.EventTracing/Compilation/CodeGen/McCodeGenerator.cs
index e7d3e26..ef5260b 100644
--- a/src/EventTraceKit.EventTracing/Compilation/CodeGen/McCodeGenerator.cs
+++ b/src/EventTraceKit.EventTracing/Compilation/CodeGen/McCodeGenerator.cs
@@ -2,7 +2,7 @@ namespace EventTraceKit.EventTracing.Compilation.CodeGen
 {
     using System;
     using System.Collections.Generic;
-    using System.ComponentModel.Composition;
+    using System.Composition;
     using System.IO;
     using System.Linq;
     using System.Text;
diff --git a/src/EventTraceKit.EventTracing/Compilation/Support/MemoryMappedViewWriter.cs b/src/EventTraceKit.EventTracing/Compilation/Support/MemoryMappedViewWriter.cs
index 2a5754e..ecac8c2 100644
--- a/src/EventTraceKit.EventTracing/Compilation/Support/MemoryMappedViewWriter.cs
+++ b/src/EventTraceKit.EventTracing/Compilation/Support/MemoryMappedViewWriter.cs
@@ -191,7 +191,6 @@ namespace EventTraceKit.EventTracing.Compilation.Support
                 null,
                 newCapacity,
                 MemoryMappedFileAccess.ReadWrite,
-                null,
                 HandleInheritability.None,
                 true);

diff --git a/src/EventTraceKit.EventTracing/EventTraceKit.EventTracing.csproj b/src/EventTraceKit.EventTracing/EventTraceKit.EventTracing.csproj
index 2a46526..9c366a6 100644
--- a/src/EventTraceKit.EventTracing/EventTraceKit.EventTracing.csproj
+++ b/src/EventTraceKit.EventTracing/EventTraceKit.EventTracing.csproj
@@ -2,7 +2,7 @@
   <PropertyGroup>
     <ProjectGuid>{7595AD97-5122-4569-A087-910FBBCB2DDC}</ProjectGuid>
     <PlatformTarget>AnyCPU</PlatformTarget>
-    <TargetFramework>net46</TargetFramework>
+    <TargetFramework>netstandard2.0</TargetFramework>^M
     <LangVersion>latest</LangVersion>
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
     <SignAssembly>true</SignAssembly>
@@ -14,9 +14,6 @@
   <PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
     <DefineConstants>TRACE</DefineConstants>
   </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="System.ComponentModel.Composition" />
-  </ItemGroup>
   <ItemGroup>
     <Compile Remove="Compilation\ResGen\EventTemplateDumperFast.cs" />
   </ItemGroup>
@@ -28,5 +25,6 @@
       <PrivateAssets>all</PrivateAssets>
       <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
     </PackageReference>
+    <PackageReference Include="System.Composition.AttributedModel" Version="1.4.1" />
   </ItemGroup>
 </Project>

Thank you for your work!

Metadata

Metadata

Assignees

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions