다시 한번 귀하의 도움이 필요합니다. 저를 믿으세요. 수십 번이 항목을 검색했지만 많은 유용한 정보를 찾을 수 없습니다..exe 프로세스에 windows forms 응용 프로그램을 연결하는 방법
그래서 내가하고있는이 프로젝트의 아이디어는 "카운터 스트라이크 글로벌 공격"이라는 게임에 내 vb.net Windows 폼 응용 프로그램을 첨부하는 것입니다. 이것은 속임수가 아닙니다!
내 의도는 ... 등등의 시간으로, 기본적으로 내가 즐기면서 볼 수있는 몇 가지 유용한 도구입니다
[문제] 내가하지만 반대로,이 작업이 완료 된 경우, 몇 비디오를 본 적이, 즉 기존 프로세스를 Windows 폼에 연결했음을 의미합니다 (예 : 어떤 사람이 calc.exe를 자신의 Windows 양식 응용 프로그램에 첨부 한 비디오를 보았습니다. 이해할 수 있듯이 그 반대의 경우, 기존 Windows 응용 프로그램에 Windows 양식을 첨부하고 싶습니다.
[것들 내가 시도] 그래서 내가 무슨 짓을했는지, 자신의 C# 코드를 복사 vb.net로 번역하고 주위를 혼합, 그리고 나는 심하게 엉망 : D
나는 내 프로젝트를 실행하면 각 프로세스 (게임 & 응용 프로그램)의이어야 (200 개) 인스턴스를 시작하고 내가 그들을 종료 내 PC를 다시 부팅해야 할 것 : 나는 당신의 코드를보다 같은보고 기대
Imports System.Windows.Forms
Imports System.Threading
Imports System.Diagnostics
Imports System.Runtime.InteropServices
Partial Public Class CubicCheat
Inherits Form
Public Sub New()
InitializeComponent()
End Sub
<DllImport("USER32.DLL")> _
Private Shared Function SetParent(hwc As IntPtr, hwp As IntPtr) As IntPtr
End Function
Private Sub CubicCheat_Load(sender As Object, e As EventArgs) Handles MyBase.Load
HookCsgo()
End Sub
Function HookCsgo()
Dim csgo As Process = Process.Start("C:\Program Files (x86)\Steam\steamapps\common\Counter-Strike Global Offensive\csgo.exe")
Dim cubic As Process = Process.Start("C:\Users\redfa_000\Documents\Visual Studio 2012\Projects\C++ Projekter\Crazy Tutorials\CubicHook\CubicHook\bin\Debug\CubicHook.exe")
Thread.Sleep(500)
cubic.WaitForInputIdle()
SetParent(cubic.MainWindowHandle, csgo.Handle)
Dispose()
End Function
End Class
CS : GO와 같은 게임이 표준 창 메시지 루프를 포함하지 않거나 특정 메시지를 다르게 무시/처리하기 때문에 수행하려는 작업이 불가능할 수 있습니다. DirectX 및 후크 (_ ** VAC ** _라고도하는 _ ** Valve Anti-Cheat System **에주의하십시오.)를 통해 게임 화면에 물건을 렌더링 할 수는 있지만, 자신의 히트 테스트 및 클릭 인식을 할 수 있습니다. –
그래, ImGUI, DirectX, OpenGL 등을 사용하여 잠깐 얘기를 들었지만 그다지 C# ++가 아닌가? D : D –
DirectX는 주로 C++이지만 C#과 VB에서 모두 작동하는 SlimDX 나 SharpDX 같은 .NET 래퍼가 있습니다. 그물. –