當前位置: 首頁>>代碼示例>>C#>>正文


C# Debugger.TargetAddress類代碼示例

本文整理匯總了C#中Mono.Debugger.TargetAddress的典型用法代碼示例。如果您正苦於以下問題:C# TargetAddress類的具體用法?C# TargetAddress怎麽用?C# TargetAddress使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


TargetAddress類屬於Mono.Debugger命名空間,在下文中一共展示了TargetAddress類的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。

示例1: AssemblerLine

 public AssemblerLine(string label, TargetAddress address, byte size, string text)
 {
     this.Label = label;
     this.Address = address;
     this.InstructionSize = size;
     this.Text = text;
 }
開發者ID:baulig,項目名稱:debugger,代碼行數:7,代碼來源:AssemblerMethod.cs

示例2: TargetMemoryArea

        public TargetMemoryArea(TargetAddress start, TargetAddress end,
					 TargetMemoryFlags flags, string name)
        {
            this.start = start;
            this.end = end;
            this.flags = flags;
            this.name = name;
        }
開發者ID:baulig,項目名稱:debugger,代碼行數:8,代碼來源:TargetMemoryArea.cs

示例3: StepFrame

        public StepFrame(Language language, StepMode mode, StackFrame stack,
				  TargetAddress start, TargetAddress end)
        {
            this.start = start;
            this.end = end;
            this.stack = stack;
            this.language = language;
            this.mode = mode;
        }
開發者ID:baulig,項目名稱:debugger,代碼行數:9,代碼來源:StepFrame.cs

示例4: LineEntry

        public LineEntry(TargetAddress address, int file, int line, bool is_hidden,
				  SourceRange? source_range)
        {
            this.Address = address;;
            this.File = file;
            this.Line = line;
            this.IsHidden = is_hidden;
            this.SourceRange = source_range;
        }
開發者ID:baulig,項目名稱:debugger,代碼行數:9,代碼來源:Method.cs

示例5: Register

        public Register(Registers registers, string name, int index, int size,
				 bool valid, long value)
        {
            this.registers = registers;
            this.Name = name;
            this.Index = index;
            this.Size = size;
            this.valid = valid;
            this.value = value;
            this.addr_on_stack = TargetAddress.Null;
        }
開發者ID:baulig,項目名稱:debugger,代碼行數:11,代碼來源:StackFrame.cs

示例6: GetTrampoline

        public override bool GetTrampoline(TargetMemoryAccess memory, TargetAddress address,
						    out TargetAddress trampoline, out bool is_start)
        {
            foreach (Bfd bfd in bfd_hash.Values) {
                if (bfd.GetTrampoline (memory, address, out trampoline, out is_start))
                    return true;
            }

            is_start = false;
            trampoline = TargetAddress.Null;
            return false;
        }
開發者ID:baulig,項目名稱:debugger,代碼行數:12,代碼來源:LinuxOperatingSystem.cs

示例7: CheckException

        internal bool CheckException(MonoLanguageBackend mono, TargetMemoryAccess target,
					      TargetAddress address)
        {
            TargetClassObject exc = mono.CreateObject (target, address) as TargetClassObject;
            if (exc == null)
                return false; // OOOPS

            if (exception == null)
                exception = mono.LookupType (Name);
            if (exception == null)
                return false;

            return IsSubclassOf (target, exc.Type, exception);
        }
開發者ID:baulig,項目名稱:debugger,代碼行數:14,代碼來源:ExceptionCatchPoint.cs

示例8: AddExecutableFile

        public override NativeExecutableReader AddExecutableFile(Inferior inferior, string filename,
									  TargetAddress base_address, bool step_into,
									  bool is_loaded)
        {
            check_disposed ();
            Bfd bfd = (Bfd) bfd_hash [filename];
            if (bfd != null)
                return bfd;

            bfd = new Bfd (this, inferior.TargetMemoryInfo, filename, base_address, is_loaded);
            bfd_hash.Add (filename, bfd);
            check_loaded_library (inferior, bfd);
            return bfd;
        }
開發者ID:baulig,項目名稱:debugger,代碼行數:14,代碼來源:DarwinOperatingSystem.cs

示例9: DisassembleInstruction

        public override AssemblerLine DisassembleInstruction(TargetMemoryAccess memory,
								      Method method,
								      TargetAddress address)
        {
            lock (this) {
                memory_exception = null;
                sb = new StringBuilder ();

                address = new TargetAddress (memory.AddressDomain, address.Address);

                string insn;
                int insn_size;
                try {
                    this.memory = memory;
                    current_method = method;
                    insn_size = bfd_glue_disassemble_insn (handle, address.Address);
                    if (memory_exception != null)
                        return null;
                    insn = sb.ToString ();
                } finally {
                    sb = null;
                    this.memory = null;
                    memory_exception = null;
                    current_method = null;
                }

                Symbol label = null;
                if (process != null)
                    label = process.SymbolTableManager.SimpleLookup (address, true);

                string label_name = null;
                if (label != null)
                    label_name = label.ToString ();

                return new AssemblerLine (
                    label_name, address, (byte) insn_size, insn);
            }
        }
開發者ID:baulig,項目名稱:debugger,代碼行數:38,代碼來源:BfdDisassembler.cs

示例10: DisassembleInstruction

        // <summary>
        //   Disassemble one instruction.
        //   If @imethod is non-null, it specifies the current method which will
        //   be used to lookup function names from trampoline calls.
        // </summary>
        public abstract AssemblerLine DisassembleInstruction(TargetMemoryAccess memory,
								      Method method,
								      TargetAddress address);
開發者ID:baulig,項目名稱:debugger,代碼行數:8,代碼來源:Disassembler.cs

示例11: AddressBreakpoint

 internal AddressBreakpoint(string name, ThreadGroup group, TargetAddress address)
     : base(EventType.Breakpoint, name, group)
 {
     this.address = address;
 }
開發者ID:baulig,項目名稱:debugger,代碼行數:5,代碼來源:AddressBreakpoint.cs

示例12: InitializeMono

        internal void InitializeMono(Inferior inferior, TargetAddress mdb_debug_info)
        {
            MonoRuntimeFound = true;
            mono_manager = MonoThreadManager.Initialize (this, inferior, mdb_debug_info, is_attached);

            InitializeThreads (inferior, !is_attached);

            if (mono_manager == null)
                return;

            mono_manager.InitializeThreads (inferior);

            if (is_attached)
                mono_manager.InitializeAfterAttach (inferior);
        }
開發者ID:baulig,項目名稱:debugger,代碼行數:15,代碼來源:Process.cs

示例13: Symbol

 public Symbol(string name, TargetAddress address, int offset)
 {
     this.Name = name;
     this.Address = address;
     this.Offset = offset;
 }
開發者ID:baulig,項目名稱:debugger,代碼行數:6,代碼來源:ISymbolTable.cs

示例14: InitCodeBuffer

 internal void InitCodeBuffer(Inferior inferior, TargetAddress code_buffer)
 {
     HasCodeBuffer = true;
     mono_debugger_server_initialize_code_buffer (
         mono_runtime_info, code_buffer.Address,
         debugger_info.ExecutableCodeBufferSize);
 }
開發者ID:baulig,項目名稱:debugger,代碼行數:7,代碼來源:MonoThreadManager.cs

示例15: DoEvaluateObject

        protected override TargetObject DoEvaluateObject(ScriptingContext context)
        {
            StackFrame frame = context.CurrentFrame;
            Register register = frame.Registers [name];
            if (register == null)
                throw new ScriptingException ("No such register `{0}'.", name);

            try {
                long value = register.Value;
                TargetAddress address = new TargetAddress (
                    context.AddressDomain, value);
                return context.CurrentLanguage.CreatePointer (frame, address);
            } catch {
                throw new ScriptingException (
                    "Can't access register `{0}' selected stack frame.", name);
            }
        }
開發者ID:baulig,項目名稱:debugger,代碼行數:17,代碼來源:Expression.cs


注:本文中的Mono.Debugger.TargetAddress類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。