コード例 #1
0
            } // end LoadModule()

            public int UnloadModule(string ImageBaseName, ulong BaseOffset)
            {
                // I wish we could do something a bit more specific based on ImageBaseName
                // and BaseOffset, but we don't know what the target is, and we can't call
                // into dbgeng to find out. (something like "nsTarget.RepresentedObject.ModuleUnloaded( ImageBaseName, BaseOffset );")
                m_debugger.DiscardCachedModuleInfo();

                try
                {
                    // TODO: the event args should take a ModuleInfo
                    var eventArgs = new ModuleUnloadedEventArgs(m_debugger,
                                                                ImageBaseName,
                                                                BaseOffset);
                    int retVal = _RaiseEvent(m_debugger.ModuleUnloaded, eventArgs);
                    if (_ShouldOutput(retVal, eventArgs))
                    {
                        _PsPipe.WriteObject(eventArgs);
                    }
                    return(retVal);
                }
                catch (Exception e)
                {
                    Util.FailFast("Unexpected exception during event callback.", e);
                    return(0);
                }
            } // end UnloadModule()
コード例 #2
0
 private void ModuleManagerOnModuleUnloaded(object sender, ModuleUnloadedEventArgs args)
 {
     _moduleCommands.Remove(args.Module.Name);
 }