I made this RPC loader for dev kernel / XDK's a while back, it's a simple app that basically just starts a thread in memory for the plugin to run (obviously needs to be run after each reboot), this could be done without any UI, but it was fun to tweak samples back in those days LOL , it's very similar to the way the loader for a game cheat trainer works, it has LED indicators (for phats) and notify popups so you know the plugin is loaded, RPC is included in the media folder, and if you wish to play with other plugins just replace that one with yours keeping the same file name (RPC.xex) https://mega.nz/#!Lk0VBLZC!Q0_Qzf391NxNHJGMqabuv3tom-_gVaRpfXf2OtXpnPc
most likely so, pretty sure that is a communication error. I believe fate6 is correct in this statement, as it says in my quoted post from the tools release, some things don't work , this being jrpc would be my guess, but that was ages ago so hard for my old brain to remember the details LOL
I tried the plugin loader but it didn't work. On the upside I managed to get a full SDK install last night so the console debugging works now! Would anyone like to help me out with the code on the previous page? I only need to be pointed in the right direction with the xdevkit.dll coding. Thanks in advance
Just curious how did you come to the conclusion the loader is not working? did the notify popup show an error message after pressing the load plugin button? did you try a known working RPC tool after loading the plugin? I know it worked for myself and many other trainer devs in the past, if there is something I can add or fix i'd like to, but to my knowledge it should work on any console running development kernel as for the mentioned code, it looks just like the RPC connection code I used to use without any prob,, should work fine if the plugin is loaded and your console is set as default in the SDK
begallegal1: I meant it as in it didn't work for me the popups worked but i still received the same error. I've tried many different tools but if you could point me toward one that is known to work I can test iKeo: I have a Dev and a Test. There's a pic on the previous page. Or did you want info on them? Thanks guys! I feel useless since I've been out of it for ages haha!
I dug up an old tutorial I did on another forum and grabbed the connection and other resources and popped them into this form app source, it uses the XRPC.dll not Xdevkit.dll (which I don't really recommend, but it suits the purpose here to get connected) once you have loaded the plugin with the console based app, when you click the connect button on this one (if not already "allowed" you will be greeted with a prompt to allow vshost or whatever it's called through your windows firewall) when connection is allowed and successful you will see something like this Spoiler you will see the code is pretty much the same as what your working with, hopefully it can clear up whatever the issue is, only variation I could think of right off is that possibly your dll is not being copied to the folder with the .exe ? https://mega.nz/#!rpMQXYBI!SVJXNNe6zTkVHBtcA2YUh3tZ8qcDMW1pajFbqjExQ3Q Source: Spoiler Code: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; //Add reference to XRPCLib using XRPCLib; namespace RT3ME_2016 { public partial class Form1 : Form { //Make an instance of our XRPC class XRPC x = new XRPC(); public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { //Try to connect , dispay console info if success, error message if failed try { x.Connect(); MessageBox.Show("Connected To: " + x.xbCon.Name + "\n\nConsole Type: " + x.xbCon.ConsoleType + "\n\nMounted Drives: " + x.xbCon.Drives + "\n\nCurrently Running: " + x.xbCon.RunningProcessInfo.ProgramName, "Connected!"); } catch (System.Exception) { MessageBox.Show("No Console To Connect", "Error!"); } } private void dateTime_Tick(object sender, EventArgs e) { Date_Time.Text = System.DateTime.Now.ToString(); } } }
Okay the connection worked. I added a button to send a command through and a received the same error as before A first chance exception of type 'System.Runtime.InteropServices.COMException' occurred in XRPC.dll 'RT3ME_2016.vshost.exe' (Managed (v4.0.30319)): Loaded 'C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System.Configuration\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Configuration.dll', Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
private void button2_Click(object sender, EventArgs e) { XDK.Notify(XRPC.XNotiyLogo.FLASHING_XBOX_CONSOLE, "Text to show up on Notification"); } Then I get this An unhandled exception of type 'System.Runtime.InteropServices.COMException' occurred in XRPC.dll Additional information: Exception from HRESULT: 0x82DA0004 Spoiler: Error code See the end of this message for details on invoking just-in-time (JIT) debugging instead of this dialog box. ************** Exception Text ************** System.Runtime.InteropServices.COMException (0x82DA0004): Exception from HRESULT: 0x82DA0004 at XDevkit.IXboxDebugTarget.SetMemory(UInt32 Address, UInt32 BytesToWrite, Byte[] Data, UInt32& BytesWritten) at XRPCLib.XRPC.ResolveFunction(String titleID, UInt32 ord) at XRPCLib.XRPC.Notify(XNotiyLogo type, String text) at RT3ME_2016.Form1.button2_Click(Object sender, EventArgs e) in F:\Downloads\New folder (2)\RT3ME_2016\RT3ME_2016\Form1.cs:line 80 at System.Windows.Forms.Control.OnClick(EventArgs e) at System.Windows.Forms.Button.OnClick(EventArgs e) at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent) at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks) at System.Windows.Forms.Control.WndProc(Message& m) at System.Windows.Forms.ButtonBase.WndProc(Message& m) at System.Windows.Forms.Button.WndProc(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam) ************** Loaded Assemblies ************** mscorlib Assembly Version: 4.0.0.0 Win32 Version: 4.6.1080.0 built by: NETFXREL3STAGE CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll ---------------------------------------- RT3ME_2016 Assembly Version: 1.0.0.0 Win32 Version: 1.0.0.0 CodeBase: file:///F:/Downloads/New%20folder%20(2)/RT3ME_2016/RT3ME_2016/bin/Release/RT3ME_2016.exe ---------------------------------------- System.Windows.Forms Assembly Version: 4.0.0.0 Win32 Version: 4.6.1038.0 built by: NETFXREL2 CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll ---------------------------------------- System Assembly Version: 4.0.0.0 Win32 Version: 4.6.1081.0 built by: NETFXREL3STAGE CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll ---------------------------------------- System.Drawing Assembly Version: 4.0.0.0 Win32 Version: 4.6.1078.0 built by: NETFXREL3STAGE CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll ---------------------------------------- XRPC Assembly Version: 1.0.0.0 Win32 Version: 1.0.0.0 CodeBase: file:///F:/Downloads/New%20folder%20(2)/RT3ME_2016/RT3ME_2016/bin/Release/XRPC.DLL ---------------------------------------- System.Xml Assembly Version: 4.0.0.0 Win32 Version: 4.6.1064.2 built by: NETFXREL3STAGE CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll ---------------------------------------- ************** JIT Debugging ************** To enable just-in-time (JIT) debugging, the .config file for this application or computer (machine.config) must have the jitDebugging value set in the system.windows.forms section. The application must also be compiled with debugging enabled. For example: <configuration> <system.windows.forms jitDebugging="true" /> </configuration> When JIT debugging is enabled, any unhandled exception will be sent to the JIT debugger registered on the computer rather than be handled by this dialog box.
Ok yea in my experience the XNotify in RPC is extremely temperamental about crashes especially on dev kernel ,,if I remember right it seemed to only work with a few of the icons available in the enum "XNotiyLogo" (funny I never noticed the spelling error there) , I don't use it in any of my RPC stuff due to these issues i've had in the past. However I do not remember if the other writeups of the plugin have this same issue or not, so you may want to try other RPC's with the loader to see if they all crash on notify,, as I explained to a member here that messaged me about the notify popup used in the plugin loader, I will only use them when they can be called from what I guess would be called native code,, like a trainer or application that uses 360 library's. Example: Spoiler Code: typedef void (*XNOTIFYQUEUEUI)(DWORD ID, DWORD Index, DWORD r5, WCHAR* Text, DWORD r7); XNOTIFYQUEUEUI XNotifyQueueUI; void hNotify(WCHAR*); DWORD WINAPI commands(WCHAR*); UINT32 ResolveFunct(char* ModName, UINT32 Ord); void hNotify(WCHAR* Str) { CreateThread(NULL, NULL, (LPTHREAD_START_ROUTINE)commands, Str, NULL, NULL); } DWORD WINAPI commands(WCHAR* Str) { XNotifyQueueUI = (XNOTIFYQUEUEUI)ResolveFunct("xam.xex", 0x290); WCHAR buffer[0x256]; swprintf_s(buffer, Str); XNotifyQueueUI(0x22, 0x0, 2, buffer, 0); return 0; } Call it with: hNotify(L"Some Message To User here");
I have a slims test kit,system is 21256.3. I tried peek-poker ,peek works but pork doesn't work,how can I get poke memory work?
how can I ptach testkit to devkit? I think there is some way like replace with xbmc.xex or something like that