public static void VscxOnModuleInstanceLoad(this DkmProcess process, DkmModuleInstance module, DkmWorkList workList) { AutoAttachToChildHandler handler = process.GetDataItem<AutoAttachToChildHandler>(); if (handler == null || module.TagValue != DkmModuleInstance.Tag.NativeModuleInstance) return; handler.OnModuleInstanceLoad((DkmNativeModuleInstance)module, workList); }
public void OnModuleInstanceLoad(DkmModuleInstance moduleInstance, DkmWorkList workList, DkmEventDescriptorS eventDescriptor) { moduleInstance.Process.VscxOnModuleInstanceLoad(moduleInstance, workList); }
void IDkmModuleModifiedNotification.OnModuleModified(DkmModuleInstance moduleInstance) { // If the module is not a managed module, the module change has no effect. var module = moduleInstance as DkmClrModuleInstance; if (module == null) { return; } // Drop any context cached on the AppDomain. var appDomain = module.AppDomain; RemoveDataItem(appDomain); }