예제 #1
0
        public SDBCapability(SDBDeviceInfo device)
        {
            string[] args = { "-s", device.Serial, SDBProtocol.capability };

            string returnValue;

            using (ProcessProxy p = new ProcessProxy())
            {
                p.StartInfo.FileName               = SDBLib.GetSdbFilePath();
                p.StartInfo.UseShellExecute        = false;
                p.StartInfo.CreateNoWindow         = true;
                p.StartInfo.RedirectStandardOutput = true;
                p.StartInfo.Arguments              = string.Join(" ", args);
                Debug.WriteLine("{0} SDBCapability command '{1}'", DateTime.Now, p.StartInfo.Arguments);
                p.Start();

                returnValue = p.StandardOutput.ReadToEnd().Replace("\r", string.Empty);
                p.WaitForExit();
            }

            IsSupported = !string.IsNullOrEmpty(returnValue);
            if (IsSupported)
            {
                GenCapDic(returnValue);
            }
        }
 protected override Parameters GetDebugEngineLaunchParameters()
 {
     return(new Parameters(
                pipePath: SDBLib.GetSdbFilePath(),
                pipeArguments: GetLldbArguments(),
                miMode: "lldb",
                additionalOptions: "",
                launchCommand: "0 vs_debug",
                launchpadArgs: " " + GetDebuggeeDllList() + niDisableOption
                ));
 }
 protected virtual Parameters GetDebugEngineLaunchParameters()
 {
     return(new Parameters(
                pipePath: SDBLib.GetSdbFilePath(),
                pipeArguments: GetLldbArguments(),
                miMode: "lldb",
                additionalOptions: "",
                launchCommand: "launch_app",
                launchpadArgs: " __AUL_SDK__ LLDB-SERVER __DLP_DEBUG_ARG__ g,--platform=host,*:1234,-- CORECLR_GDBJIT " + GetDebuggeeDllList() + niDisableOption
                ));
 }
//!!            public static string LldbMi => (new SDBCapability().GetValueByKey("sdk_toolpath")) + @"/lldb/bin/lldb-mi";
            public static Task <string> SDBTaskAsync() => Task.Run(() =>
            {
                return(SDBLib.GetSdbFilePath());
            });