J'ai un nouveau problème avec un morceau de code de c + +. J'ai pression d'une touche pour faire une bascule clé ou quelque chose de similaire ... peut-être le code expliquera mieux que moi:Conversion de C++ (GetAsyncKeyState) en C# - WPF
while (1) {
Sleep (1);
if (GetAsyncKeyState(VK_TAB) & 1) {
toggle = !toggle;
if(toggle)
{
code here...();
}
else
{
code here...();
}
}
}
En C++ tout va bien ... mais le portage vers C# - WPF, me donne se brise . Une idée quel est le moyen le plus facile? Merci,
éditer 2: Pourquoi ne fonctionne pas? J'ai enregistré la clé pour l'action .. mais ne démarre pas. C'est parce que je suis déjà dans la méthode?
KeyboardHook hook = new KeyboardHook();
// take action on keys pressed. hook.KeyPressed += new EventHandler<KeyPressedEventArgs>(fireUp);
// register the event that is fired after the key press. hook.RegisterHotKey(ModKeys.None, Keys.Tab);
void fireUp(object sender, KeyPressedEventArgs e)
{
bool toggle = false;
toggle = !toggle;
byte[] byt = { 0xC7,0x83,0x1A,0x05,0x00,0x00,0x00,0x00,0x00,0x00 };
for (int i = 6; i < 10; ++i)
{
byt[i] = (byte)(atkSpd & 0xFF);
atkSpd = atkSpd >> 8;
}
if (toggle)
{
Write(vMemory + 8, byt, 10);
Write(vMemory, BitConverter.GetBytes((vMemory + 8)), 8);
Write(atkBase, new byte[] { 0xFF, 0x24, 0x25 }, 3);
Write(atkBase + 3, BitConverter.GetBytes((vMemory)), 4);
}
else
{
Write(atkBase, new byte[] { 0x66, 0x89, 0xB3, 0x1A, 0x05, 0x00, 0x00 }, 7);
}
}
Montrez-nous le code qui plante, c'est-à-dire, montrez-nous ce que vous avez essayé. –
J'ai de nombreux codes de panne de toute façon ... C'est de WPF, mais ne fonctionne pas parce que je pense est juste pour les boutons MainWindow ..: 'private void pressTab (expéditeur d'objet, KeyEventArgs e) { if (e.Key == Key.Tab) { rwMem.StartGS(); } sinon if (e.Key == Key.Tab) { rwMem.StartSW(); } } ' – user2558921