不确定为什么这会被拒绝,我只需要帮助。我一直在努力奋斗这几个小时,我已经完成了,如果你不喜欢这个帖子,请继续投票,不要投票,所以没有人能看到它!
好的,我已经谷歌搜索并永远阅读了这样的答案和问题,但是没有找到解释,我可以理解我遇到的这些问题,我希望有人在这里可以提供帮助!
Error1:'XDevkit.IXboxDebugTarget.GetMemory(uint,uint,byte [],out uint)的最佳重载方法匹配'有一些无效的参数
基本代码:
XDevkit.IXboxDebugTarget.GetMemory(uint, uint, byte[], out uint)
我拥有新:
uint num1;
uint num2;
uint num4;
num1 = Convert.ToUInt32(textBox2.Text);
num2 = Convert.ToUInt32(textBox3.Text);
num4 = Convert.ToUInt32(textBox5.Text);
byte[] num3;
num3 = BitConverter.GetBytes(Convert.ToInt32(textBox3.Text));
IXboxManager xbm = new XboxManager();
IXboxConsole xbc = xbm.OpenConsole("textBox1.Text"); //Or Console Name in ""
IXboxDebugTarget xdt = xbc.DebugTarget;
xdt.ConnectAsDebugger("XeDevMemPatcher", XboxDebugConnectFlags.Force); // this isn't always needed
IXboxDebugTarget.GetMemory(num1, num2, num3[], out num4);
}
使用此代码编辑当前错误
1)当前上下文中不存在名称“编码”
2)'XDevkit.IXboxDebugTarget.GetMemory(uint,uint,byte [],out uint)'的最佳重载方法匹配有一些无效的2222个参数
3)参数3:无法从'byte'转换为'byte []'
好的,所以这显然非常令人困惑,因为我没有单独或根据答案工作,所以我只是在这里发布整个来源供你们查看,希望这会有所帮助: 抱歉,我无法发布GUI的图片,因为我没有足够的REP,但希望这应该没问题:
使用System; 使用System.Windows.Forms;
命名空间XDevkit { 公共部分类Form1:表格 { 公共Form1() { 的InitializeComponent(); }
private void button1_Click(object sender, EventArgs e)
{
IXboxManager xbm = new XboxManager();
//IXboxConsole xbc = xbm.OpenConsole(xbm.DefaultConsole); // dev
IXboxConsole xbc = xbm.OpenConsole("textBox1.Text");
IXboxDebugTarget xdt = xbc.DebugTarget;
xdt.ConnectAsDebugger("XeDevMemPatcher", XboxDebugConnectFlags.Force);
}
private void button2_Click(object sender, EventArgs e)
{
uint num1 = Convert.ToUInt32(textBox2.Text);
uint num2 = Convert.ToUInt32(textBox3.Text);
byte[] num3 = Encoding.ASCII.GetBytes(textBox4.Text);
uint num4 = Convert.ToUInt32(textBox5.Text);
int num5 = Convert.ToInt32(textBox4.Text);
// ...
if (num3.Length > 1)
{
IXboxManager xbm = new XboxManager();
IXboxConsole xbc = xbm.OpenConsole("textBox1.Text");
IXboxDebugTarget xdt = xbc.DebugTarget;
xdt.ConnectAsDebugger("XeDevMemPatcher", XboxDebugConnectFlags.Force);
IXboxDebugTarget.GetMemory(num1, num2, num3[1], out num4);
}
private void button3_Click(object sender, EventArgs e)
{
string a;
a = "textBox6.Text";
IXboxManager xbm = new XboxManager();
IXboxConsole xbc = xbm.OpenConsole(textBox1.Text);
IXboxConsole.ScreenShot(a)
}
}
}
答案 0 :(得分:1)
错误1: num3
属于byte
类型,没有索引器。
如果您将代码修改为以下代码,则示例可能有效:
uint num1 = Convert.ToUInt32(textBox2.Text);
uint num2 = Convert.ToUInt32(textBox3.Text);
byte[] num3 = Encoding.ASCII.GetBytes(textBox4.Text);
uint num4 = Convert.ToUInt32(textBox5.Text);
int num5 = Convert.ToInt32(textBox4.Text);
// ...
if (num3.Length > 1) {
IXboxManager xbm = new XboxManager();
IXboxConsole xbc = xbm.OpenConsole("textBox1.Text");
IXboxDebugTarget xdt = xbc.DebugTarget;
xdt.ConnectAsDebugger("XeDevMemPatcher", XboxDebugConnectFlags.Force);
IXboxDebugTarget.GetMemory(num1, num2, num3[1], out num4);
}
错误2: IXboxConsole.ScreenShot
是一个实例方法,而不是类(也称为静态)方法。您必须先创建一个实例,然后才能调用实例方法:
IXboxManager xbm = new XboxManager();
IXboxConsole xbc = xbm.OpenConsole(textBox1.Text);
xbc.ScreenShot("screenshot");
答案 1 :(得分:0)
从错误消息中可以清楚地看到。 num3
不是字节数组,因此您无法使用数组索引访问它。如果要按需要访问它,则需要将textbox3.Text
转换为字节数组。您尚未向我们提供此信息。
编辑:
如果要将文本框中的值转换为字节数组,可以执行以下操作:
byte[] num3 = BitConvert.GetBytes(Convert.ToInt32(textBox3.Text));
然后您可以根据需要访问num3[1]
(假设数组的长度至少为1)。