Pessoal eu estou com uma dúvida à alguns dias, comecei estudar linguagem de programação C# (C Sharp), estou com o curso básico e o avançado completissímo mas, minha dúvida é, como qualquer programador aqui sabe, 90% dos melhores jogos (principalmente multplayers) são programados em C++, gostaria de saber se eu poderia fazer um hack ou injetor mesmo, em C# que funcionasse em um jogo C++. Por exemplo, fazer scripts, hacks e injetores em linguagem C#, mas que o jogo em linguagem C++ entendesse! É possível? Se sim, por que? E como? Obrigado!
Unconfigured Ad Widget
Collapse
Anúncio
Collapse
No announcement yet.
[DÚVIDA] Programação!
Collapse
X
-
Acho impossível, pois, um programa compilado em C# não é binário (Talvez estranho você ler isso) enquanto o em C++ é... O C# depois de compilado depende de uma ferramenta da microsoft que já vem instalado no Windows, o Net.framework. O programa entra em contato com o framework que entra em contato com o SO. Porque isso? Multiplataforma... Sendo assim todos os SO que tiverem instalados o Net.framework vão poder rodar o programa do C# (A mesma ideia do Java). Como Windows Phone, e outras plataformas do Windows. Poderia ser até Linux, creio que exista um framework pra Linux, mas aí tem que pesquisar (:
Enfim... Acho que dá pra fazer o que vc quer, mas não com C#.
- Top
-
Postado Originalmente por Lizard Ver PostAcho impossível, pois, um programa compilado em C# não é binário (Talvez estranho você ler isso) enquanto o em C++ é... O C# depois de compilado depende de uma ferramenta da microsoft que já vem instalado no Windows, o Net.framework. O programa entra em contato com o framework que entra em contato com o SO. Porque isso? Multiplataforma... Sendo assim todos os SO que tiverem instalados o Net.framework vão poder rodar o programa do C# (A mesma ideia do Java). Como Windows Phone, e outras plataformas do Windows. Poderia ser até Linux, creio que exista um framework pra Linux, mas aí tem que pesquisar (:
Enfim... Acho que dá pra fazer o que vc quer, mas não com C#.
mas então, vou terminar o curso de C# e buscar aprender (sempre) outra linguagem que me de o que preciso. Thx
Knowledge Is Free.
We are Anonymous.
We are Legion.
We Do Not Forgive.
We Do Not Forget.
Expect Us.
- Top
Comment
-
Postado Originalmente por speed_infected Ver PostPessoal eu estou com uma dúvida à alguns dias, comecei estudar linguagem de programação C# (C Sharp), estou com o curso básico e o avançado completissímo mas, minha dúvida é, como qualquer programador aqui sabe, 90% dos melhores jogos (principalmente multplayers) são programados em C++, gostaria de saber se eu poderia fazer um hack ou injetor mesmo, em C# que funcionasse em um jogo C++. Por exemplo, fazer scripts, hacks e injetores em linguagem C#, mas que o jogo em linguagem C++ entendesse! É possível? Se sim, por que? E como? Obrigado!
Exemplo simples
Código:using System; using System.Diagnostics; using System.Runtime.InteropServices; using System.Windows.Forms; namespace WindowsFormsApplication1 { public partial class Form1 : Form { [DllImport("User32.dll")] public static extern int SetForegroundWindow(IntPtr point); public Form1() { InitializeComponent(); Load += (sender, args) => { var p = Process.Start("notepad.exe"); p.WaitForInputIdle(); var h = p.MainWindowHandle; SetForegroundWindow(h); SendKeys.SendWait("Injetando Texto: Cr!tic4L K3rneL"); }; } } }
Bem se você pode manipular ponteiros C/C++ você pode modificar qualquer coisa que está em memoria.
Quanto ao DLLInject para games ou já usei alguns feitos em C# (Multiplayers) que basicamente fazem um attach em processos que estou rodando e conseguem causar comportamentos diferentes no game com por exemplo fazer o personagem nascer no mesmo local aonde morreu a outros coisas como olhar através das paredes, tudo isso é possível porque DirectX precisar acessar o hardware para ter acesso a teclado, vídeo etc... então pelos mesmos caminho que é usa é possível fazer a manipulação dos ponteiros do mesmo.
Para finalizar, estude bastante pois não é muito simples conseguir fazer coisa mais complexas mais vai a dica no youtube já tem muitos videos gringos ensinando a fazer coisa do tipo também a internet tem muito coisa relacionada a creation/attach de processos, existem muitos classes no Namespace System.Runtime.InteropServices para essa finalidade, além do que você pode usar muitas bibliotecas de terceiros.
Meu objetivo mesmo era provar que totalmente possível usar C# para manipular código não gerenciado.
Não se esqueça de quem fez o Windows, DirectX, .NET, C#...
att+
by: Cr!tic4L K3rneL"Where there's a Shell, there is a way"
- Top
Comment
X
Comment