// // Registers a Dynamically Generated GUID automatically with an inbuilt callback // private unsafe uint Register(Guid controlGuid) { uint status; TraceGuidRegistration guidReg = new TraceGuidRegistration(); Guid dummyGuid = new Guid("{b4955bf0-3af1-4740-b475-99055d3fe9aa}"); etwProc = new EtwTrace.EtwProc(MyCallback); guidReg.Guid = &dummyGuid; guidReg.RegHandle = null; status = EtwTrace.RegisterTraceGuids(etwProc, null, ref controlGuid, 1, ref guidReg, null, null, out registrationHandle); if (status != 0) { Console.WriteLine("Register() call Failed with Status {0}", status); } return(status); }
internal static extern unsafe uint RegisterTraceGuids([In] EtwProc cbFunc, [In] void *context, [In] ref System.Guid controlGuid, [In] uint guidCount, ref TraceGuidRegistration guidReg, [In] string mofImagePath, [In] string mofResourceName, [Out] out ulong regHandle);