[VB.net] TopMost für Overlay?

02/05/2014 21:03 Maufeat#1
Hallo,

ich wollte mal fragen wie man am besten ein Overlay in VB.net erstellt. Ich möchte im LoLClient mal ein kleinen Button hinzufügen, zum Test. Es funktioniert TEILWEISE.

Das Problem: Der Button geht oft/immer in den Hintergrund von LoL trotz TopMost.

Screens vom Problem:

Mein "Code" der das ganze in den Vordergrund bringen soll:

Code:
    Private Sub Timer2_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer2.Tick
        Dim ForeGroundHwnd As IntPtr = GetForegroundWindow
        Dim MySearchWinow As IntPtr = FindWindow(ProcessName, Nothing)
        If ForeGroundHwnd = MySearchWinow Then
            Me.TopMost = True
        Else
            Me.TopMost = False
        End If
    End Sub

Bin dankbar für jede Hilfe. :)

EDIT: bzw, ich weis das TopMost nicht angebracht ist! Kennt wer eine alternative, um das Overlay zu erstellen?
02/05/2014 22:19 kissein#2
c# alternative für das topmost problem
PHP Code:
using System.Runtime.InteropServices;

[
DllImport("User32.dll")]
static 
extern bool SetForegroundWindow(int hwnd);

private 
void foo()
{
    
int hwnd this.Handle.ToInt32();
    
SetForegroundWindow(hwnd);

02/05/2014 22:46 'Heaven.#3
Du könntest auch versuchen es mit DirectX direkt in das Spielfenster zu "malen"
02/05/2014 22:58 Maufeat#4
Quote:
Originally Posted by Waka Toa View Post
Du könntest auch versuchen es mit DirectX direkt in das Spielfenster zu "malen"
Wollte ich machen, aber muss dazu nicht das Programm auch DirectX inhalt haben? Habt ihr mal Tutorials dazu?
02/05/2014 23:50 'Heaven.#5
[Only registered and activated users can see links. Click Here To Register...] cheats.me/forum/c/62019-c-non-hooked-external-directx-overlay.html


Funktioniert aber nur im Fenstermodus



Ansonsten google einfach nach 'C# d3d overlay' und übersetz den c# code zu vb.net