Пример #1
0
            // Token: 0x06000201 RID: 513 RVA: 0x00006FC0 File Offset: 0x000051C0
            int IDebugExpression2.EvaluateSync(enum_EVALFLAGS dwFlags, uint dwTimeout, IDebugEventCallback2 pExprCallback, out IDebugProperty2 ppResult)
            {
                EvaluationOptions defaultOptions = StackFrame.DefaultOptions;

                defaultOptions.EvaluationTimeout       = (int)dwTimeout;
                defaultOptions.MemberEvaluationTimeout = (int)dwTimeout;
                defaultOptions.EllipsizeStrings        = false;
                defaultOptions.IntegerDisplayFormat    = this.Frame.Session.EvaluationOptions.IntegerDisplayFormat;
                if ((dwFlags & enum_EVALFLAGS.EVAL_NOFUNCEVAL) != 0)
                {
                    defaultOptions.AllowMethodEvaluation = false;
                    defaultOptions.AllowTargetInvoke     = false;
                }
                ObjectValue expressionValue = this.Frame.Frame.GetExpressionValue(this.Text, defaultOptions);

                if (expressionValue == null)
                {
                    ppResult = null;
                    return(1);
                }
                if (!expressionValue.WaitHandle.WaitOne((int)dwTimeout))
                {
                    ppResult = null;
                    return(-2147221455);
                }
                if (expressionValue.IsError)
                {
                    ppResult = null;
                    return(1);
                }
                expressionValue.Name = this.Text;
                ppResult             = new StackFrame.Property(this.Frame, expressionValue);
                return(0);
            }
Пример #2
0
 // Token: 0x06000200 RID: 512 RVA: 0x00006FA1 File Offset: 0x000051A1
 private void SendResult(StackFrame.Property property)
 {
     this.Frame.SendEvent(new ExpressionEvaluationCompleteEvent(this.Frame.Thread, this, property));
 }