////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
        ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
        ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

        public int GetServer(out IDebugCoreServer2 ppServer)
        {
            //
            // Gets the instance of a machine server this process is running on.
            //

            LoggingUtils.PrintFunction();

            throw new NotImplementedException();
        }
Пример #2
0
 /// <summary>
 /// Send an event to SDM.
 /// </summary>
 /// <param name="server"> Server. Using NULL. </param>
 /// <param name="port"> The IDebugPort2 port. </param>
 /// <param name="process"> The IDebugProcess2 process. </param>
 /// <param name="program"> The IDebugProgram2 program. Using NULL. </param>
 /// <param name="ev"> The event. It can be: AD7ProcessDestroyEvent or AD7ProcessCreateEvent. </param>
 /// <param name="iid"> The event GUID. </param>
 private void SendEvent(IDebugCoreServer2 server, IDebugPort2 port, IDebugProcess2 process, IDebugProgram2 program, IDebugEvent2 ev, Guid iid)
 {
     foreach (var eventSink in m_eventSinks)
     {
         IDebugPortEvents2 events = eventSink as IDebugPortEvents2;
         if (events != null)
         {
             events.Event(server, port, process, program, ev, ref iid);
         }
     }
 }
Пример #3
0
 // Token: 0x06000206 RID: 518 RVA: 0x000070AC File Offset: 0x000052AC
 public void Event(IDebugCoreServer2 pServer, IDebugPort2 pPort, IDebugProcess2 pProcess, IDebugProgram2 pProgram, IDebugEvent2 pEvent, ref Guid riidEvent)
 {
     IDebugPortEvents2[] array = this.sinks.ToArray();
     foreach (IDebugPortEvents2 debugPortEvents in array)
     {
         if (debugPortEvents != null)
         {
             debugPortEvents.Event(pServer, pPort, pProcess, pProgram, pEvent, ref riidEvent);
         }
     }
 }
Пример #4
0
        /// <summary>
        /// Send the given event to all event sinks
        /// </summary>
        private void SendEvent(IDebugCoreServer2 server, IDebugPort2 port, IDebugProcess2 process, IDebugProgram2 program, BaseEvent @event)
        {
            var iid = @event.IID;

            DLog.Debug(DContext.VSDebuggerEvent, "DebugPort Event {0} {1}", @event.GetType().Name, iid);
            foreach (var eventSink in eventSinks)
            {
                var events = eventSink as IDebugPortEvents2;
                if (events != null)
                {
                    var rc = events.Event(server, port, process, program, @event, ref iid);
                    if (!ErrorHandler.Succeeded(rc))
                    {
                        DLog.Error(DContext.VSDebuggerEvent, "DebugPort Event failed {0}", rc);
                    }
                }
            }
        }
Пример #5
0
 /// <summary>
 /// Gets the server that this process is running on.
 /// </summary>
 /// <param name="ppServer">Returns an IDebugCoreServer2 object that represents the server on which this process is running.</param>
 /// <returns>If successful, returns S_OK; otherwise, returns an error code.</returns>
 /// <remarks>More than one server can be running on a single machine.</remarks>
 public virtual int GetServer(out IDebugCoreServer2 ppServer)
 {
     Logger.Debug(string.Empty);
     ppServer = null;
     return(VSConstants.E_NOTIMPL);
 }
Пример #6
0
 /// <summary>
 /// Gets the server that this process is running on.
 /// </summary>
 public int GetServer(out IDebugCoreServer2 ppServer)
 {
     DLog.Debug(DContext.VSDebuggerComCall, "IDebugProcess2.GetServer");
     ppServer = null;
     return VSConstants.E_NOTIMPL;
 }
Пример #7
0
 /// <summary>
 /// Gets the server that this process is running on.
 /// </summary>
 /// <param name="ppServer">Returns an IDebugCoreServer2 object that represents the server on which this process is running.</param>
 /// <returns>If successful, returns S_OK; otherwise, returns an error code.</returns>
 /// <remarks>More than one server can be running on a single machine.</remarks>
 public virtual int GetServer( out IDebugCoreServer2 ppServer )
 {
     Logger.Debug( string.Empty );
     ppServer = null;
     return VSConstants.E_NOTIMPL;
 }
Пример #8
0
 public int GetServer(out IDebugCoreServer2 ppServer)
 {
     throw new NotImplementedException();
 }
Пример #9
0
        /// <summary>
        /// Gets the list of processes running on this port.
        /// </summary>
        /// <returns> Returns the list of processes running on this port. </returns>
        IEnumerable <AD7Process> GetProcesses()
        {
            IDebugCoreServer2 server = null;

            if (m_processes.Count() != 0)
            {
                foreach (AD7Process p in m_processes)
                {
                    AD7ProcessDestroyEvent ev = new AD7ProcessDestroyEvent();
                    SendEvent(server, this, p, null, ev, ev.getGuid());
                }
                m_processes.Clear();
            }

            string publicKeyPath = Environment.GetEnvironmentVariable("AppData") + @"\BlackBerry\bbt_id_rsa.pub";

            string response = GDBParser.GetPIDsThroughGDB(m_IP, m_password, m_isSimulator, m_toolsPath, publicKeyPath, 7);

            if ((response == "TIMEOUT!") || (response.IndexOf("1^error,msg=", 0) != -1)) //found an error
            {
                if (response == "TIMEOUT!")                                              // Timeout error, normally happen when the device is not connected.
                {
                    MessageBox.Show("Please, verify if the Device/Simulator IP in \"BlackBerry -> Settings\" menu is correct and check if it is connected.", "Device/Simulator not connected or not configured properly", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
                else
                if (response[29] == ':') // error: 1^error,msg="169.254.0.3:8000: The requested address is not valid in its context."
                {
                    string txt     = response.Substring(13, response.IndexOf(':', 13) - 13) + response.Substring(29, response.IndexOf('"', 31) - 29);
                    string caption = "";
                    if (txt.IndexOf("The requested address is not valid in its context.") != -1)
                    {
                        txt    += "\n\nPlease, verify the BlackBerry device/simulator IP settings.";
                        caption = "Invalid IP";
                    }
                    else
                    {
                        txt    += "\n\nPlease, verify if the device/simulator is connected.";
                        caption = "Connection failed";
                    }
                    MessageBox.Show(txt, caption, MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
                response = "";
            }
            else if (response.Contains("^done"))
            {
                response = response.Remove(response.IndexOf("^done"));
                string[] tempListOfProcesses = response.Split('\n');

                int ind = (response[0] == '&') ? 1 : 0; // ignore the first if it starts with & (&"info pidlist")
                while (ind < tempListOfProcesses.Length - 1)
                {
                    string process = tempListOfProcesses[ind];
                    int    pos     = process.LastIndexOf('/');
                    if (pos == -1)
                    {
                        ind++;
                        continue;
                    }
                    process = process.Remove(pos).Substring(2);
                    for (ind = ind + 1; ind < tempListOfProcesses.Length - 1; ind++) // ignore the duplicates
                    {
                        int pos2 = tempListOfProcesses[ind].LastIndexOf('/');
                        if ((pos2 <= 2) || (tempListOfProcesses[ind].Substring(2, pos2 - 2) != process))
                        {
                            break;
                        }
                    }
                    AD7Process proc = new AD7Process(this, process.Substring(process.IndexOf("- ") + 2), process.Remove(process.IndexOf(" ")));
                    m_processes.Add(proc);
                    AD7ProcessCreateEvent ev = new AD7ProcessCreateEvent();
                    SendEvent(server, this, proc, null, ev, ev.getGuid());
                }
            }
            return(m_processes);
        }
Пример #10
0
 /// <summary>
 /// Gets the server that this process is running on. Not implemented completely because _server has no value assigned to it.
 /// (http://msdn.microsoft.com/en-us/library/bb147017.aspx)
 /// </summary>
 /// <param name="ppServer"> Returns an IDebugCoreServer2 object that represents the server on which this process is running. </param>
 /// <returns> VSConstants.S_OK. </returns>
 public int GetServer(out IDebugCoreServer2 ppServer)
 {
     ppServer = _server;
     return(VSConstants.S_OK);
 }
Пример #11
0
 /// <summary>
 /// Send the given event to all event sinks
 /// </summary>
 private void SendEvent(IDebugCoreServer2 server, IDebugPort2 port, IDebugProcess2 process, IDebugProgram2 program, BaseEvent @event)
 {
     var iid = @event.IID;
     DLog.Debug(DContext.VSDebuggerEvent, "DebugPort Event {0} {1}", @event.GetType().Name, iid);
     foreach (var eventSink in eventSinks)
     {
         var events = eventSink as IDebugPortEvents2;
         if (events != null)
         {
             var rc = events.Event(server, port, process, program, @event, ref iid);
             if (!ErrorHandler.Succeeded(rc))
             {
                 DLog.Error(DContext.VSDebuggerEvent, "DebugPort Event failed {0}", rc);
             }
         }
     }
 }
Пример #12
0
 public int GetServer(out IDebugCoreServer2 ppServer)
 {
     Log.Debug("Process: GetServer");
     ppServer = null;
     return VSConstants.S_OK;
 }
 new public int SetServer(IDebugCoreServer2 pServer)
 {
     _server = pServer;
     return(COM_HResults.S_OK);
 }
 public int SetServer(IDebugCoreServer2 pServer)
 {
     return(s_portSupplier.SetServer(pServer));
 }
Пример #15
0
 public int GetServer(out IDebugCoreServer2 ppServer)
 {
     DebugHelper.TraceEnteringMethod();
     throw new NotImplementedException();
 }
Пример #16
0
        public int GetServer(out IDebugCoreServer2 ppServer)
        {
            ppServer = null;

            return(S_OK);
        }
 int IDebuggerInternalEvents.OnProcessDeregister(IDebugCoreServer2 pServer, IDebugProcess2 pProcess) {
     return VSConstants.S_OK;
 }
Пример #18
0
 int IDebugProcess2.GetServer(out IDebugCoreServer2 ppServer)
 {
     throw new NotImplementedException();
 }
Пример #19
0
 int Microsoft.VisualStudio.Debugger.Interop.IDebugProcess2.GetServer(out IDebugCoreServer2 ppServer)
 {
     ppServer = m_port.DebugPortSupplier.CoreServer;
     return Utility.COM_HResults.S_OK;
 }
Пример #20
0
 public int GetServer(out IDebugCoreServer2 ppServer)
 {
     ppServer = _server;
     return VSConstants.S_OK;
 }
 new public int SetServer(IDebugCoreServer2 pServer)
 {
     m_server = pServer;
     return Utility.COM_HResults.S_OK;
 }
 public int SetServer(IDebugCoreServer2 pServer)
 {
     server2 = pServer;
     server3 = (IDebugCoreServer3)server2;
     return(Microsoft.VisualStudio.VSConstants.S_OK);
 }
 public int SetServer(IDebugCoreServer2 pServer) 
 {
     return s_portSupplier.SetServer(pServer);
 }
Пример #24
0
 /// <summary>
 /// Gets the server that this process is running on.
 /// </summary>
 public int GetServer(out IDebugCoreServer2 ppServer)
 {
     DLog.Debug(DContext.VSDebuggerComCall, "IDebugProcess2.GetServer");
     ppServer = null;
     return(VSConstants.E_NOTIMPL);
 }
Пример #25
0
 int IDebuggerInternalEvents.OnProcessDeregister(IDebugCoreServer2 pServer, IDebugProcess2 pProcess)
 {
     return(VSConstants.S_OK);
 }
Пример #26
0
 public int GetServer(out IDebugCoreServer2 ppServer)
 {
     DebugHelper.TraceEnteringMethod();
     throw new NotImplementedException();
 }
 public int GetServer(out IDebugCoreServer2 ppServer) {
     ppServer = null;
     return VSConstants.E_NOTIMPL;
 }
Пример #28
0
 public int GetServer(out IDebugCoreServer2 ppServer)
 {
     ppServer = null;
     return(VSConstants.E_NOTIMPL);
 }
Пример #29
0
 public int GetServer(out IDebugCoreServer2 ppServer)
 {
     Log.Debug("Process: GetServer");
     ppServer = null;
     return(VSConstants.S_OK);
 }
Пример #30
0
 public int GetServer(out IDebugCoreServer2 ppServer)
 {
   throw new NotImplementedException();
 }
Пример #31
0
 /// <summary>
 /// Send an event to SDM.
 /// </summary>
 /// <param name="server"> Server. Using NULL. </param>
 /// <param name="port"> The IDebugPort2 port. </param>
 /// <param name="process"> The IDebugProcess2 process. </param>
 /// <param name="program"> The IDebugProgram2 program. Using NULL. </param>
 /// <param name="ev"> The event. It can be: AD7ProcessDestroyEvent or AD7ProcessCreateEvent. </param>
 /// <param name="iid"> The event GUID. </param>
 private void SendEvent(IDebugCoreServer2 server, IDebugPort2 port, IDebugProcess2 process, IDebugProgram2 program, IDebugEvent2 ev, Guid iid)
 {
     foreach (var eventSink in m_eventSinks)
     {
         IDebugPortEvents2 events = eventSink as IDebugPortEvents2;
         if (events != null)
         {
             events.Event(server, port, process, program, ev, ref iid);
         }
     }
 }