2012-06-21 41 views
0

錯誤可以發現下面的代碼!爲「XDevkit.IXboxDebugTarget.GetMemory(UINT,UINT,字節[],出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)'的最佳重載方法匹配'有一些無效參數

3)參數3:無法從'字節'轉換爲'字節[]'

來源:

使用系統;使用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, 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

那是什麼answeredanswered? – Schaliasos

+2

@Schaliasos,出於某種原因,用戶編輯的問題,以紀念它是由與「回答」文本替換一切回答,我滾回來 – CaffGeek

+0

我看到兩次同樣的問題,只是幾分鐘前。 @ user1205336在回答問題後,您不必更改問題。這是很清楚的,因爲你已經接受一個答案 – Schaliasos

回答

0

由於第三個參數GetMemory期待一個字節數組,你NUM3變量是一個字節數組,你應該只把它作爲num3

至於編碼不現有在目前情況下,你很可能只是缺少using System.Text

+0

好吧,我這樣做,我現在收到此錯誤: - 一個對象引用需要非靜態字段,方法或屬性「XDevkit.IXboxDebugTarget.GetMemory( UINT,UINT,字節[],出UINT)」 ------------更新OP ------------ – user1205336

+1

你'IXboxDebugTarget XDT = .. .'所以你應該使用'xdt.GetMemory(...)'我會想像 – MrOBrian

+0

非常感謝你! – user1205336

相關問題