VisualBasic Apps nicht von Value Manipulations betroffen?

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 8 Antworten in diesem Thema. Der letzte Beitrag () ist von Ceytec.

    VisualBasic Apps nicht von Value Manipulations betroffen?

    Hey zusammen!

    Ich habe heute mal aus Interesse versucht den "Speed" einer VB Anwendung von außerhalb zu beschleunigen.
    Dazu habe ich ein gängiges Tool namens "Cheat Engine" (aktuellste Version) genutzt.

    Verwundert habe ich festgestellt, dass die Anwendung kein Stück schneller wurde... ?(
    Kann mir wer erklären woran das liegt? Kenne mich da eher weniger aus.
    Und wenn ich mich wundere will ich den Sachverhalt verstehen :)

    Hier der Code der Timer Anwendung:

    VB.NET-Quellcode

    1. Public Class Form1
    2. Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    3. Dim time As New Timer With {.Interval = 1, .Enabled = True}
    4. AddHandler time.Tick, AddressOf TickTimer
    5. End Sub
    6. Dim i As Double = 0
    7. Sub TickTimer()
    8. i += 1
    9. Label1.Text = CType(i, String)
    10. Dim sec As String = i / 100
    11. Label2.Text = "Seconds: " + sec
    12. End Sub
    13. End Class


    Hier noch meine Durchführung:


    Vielen Dank!
    LG
    Bitte benutze OPTION STRICT ON.
    Und optional OPTION EXPLICIT ON.
    Hier ein CODE-CONVERTER.

    Suchanfragen-Ansatz für GOOGLE.
    Prüfe deinen Beitrag in einer RECHTSCHREIBPRÜFUNG.

    1. zwar Offtopic, aber: Option Strict On
    2. schon mal was anderes als nen Timer probiert? Der wird bestimmt irgendwie sicherstellen, dass die Zeiten eingehalten werden. Kann mir zwar nicht vorstellen, dass man ne App beschleunigen kann, da sie bestimt eh schon so schnell wie möglich arbeitet, aber vielleicht wirst Du ja mit irgend nem Code-Snippet fündig.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.
    jaja Option Strict on mache ich meistens ;P
    Bitte benutze OPTION STRICT ON.
    Und optional OPTION EXPLICIT ON.
    Hier ein CODE-CONVERTER.

    Suchanfragen-Ansatz für GOOGLE.
    Prüfe deinen Beitrag in einer RECHTSCHREIBPRÜFUNG.

    Ceytec schrieb:

    CType(i, String)
    Schonmal was von .ToString gehört? Jede Klasse hat das. Absolut jede. Sogar selbstgeschriebene. Sogar Strukturen. Und Dank IntelliSense sollte .ToString auch schneller Geschrieben sein, als CType(i, String)

    Und hättest du das Bild über die foreninterne Uploadfunktion hochgeladen, und nicht über einen nutzlosen Hoster, wäre nicht nur sichergestellt, dass das Bild solange hier zu sehen ist wie das Forum existiert, sondern wir könnten auch das Bild in Originalgröße und nicht nur in 640x360 betrachten.

    Und was speedhacks angeht, ich vermute mal, nach 2 Minuten Google, dass dadurch, dass das "Rendern" der GUI mehr oder weniger "Außerhalb" des Programmes geschieht, man also nicht selbst alle 16,6 ms das Fenster neuzeichnet (Und ich glaube das geschieht auch generell nicht, außer bei Bewegungen des Fensters), normale Programme "immun" sind. Oder anders gesagt, die durch die injectete DLL umgebogenen syscalls werden so gut wie nie aufgerufen.

    Bei Spielen hingegen ist es was anderes, da innerhalb der "Gameloop" immer wieder geprüft werden muss, ob es nun Zeit ist einen Frame zu rendern, oder nicht.
    Wie ich meine Variablen konvertiere ist meine Entscheidung und ja ich kenne ".ToString" xDD

    Und nein, normalerweise sind alle Anwendungen davon betroffen. Da jede Anwendung Values besitzt. So zB der Timer. Und CheatEngine manipuliert genau diese. So müsste jede Anwendung davon betroffen sein. Sind es auch größtenteils. Das war das erste mal für mich, dass eine Anwendung nicht davon betroffen war. Liegt das vllt einfach an VisualBasic?¿

    //Edit: Und ein NoName Hoster ist es auch nicht. Der ist eigtl sogar ziemlich populär. Und dazu auch Google Suche Nummer 1.

    LG
    Bitte benutze OPTION STRICT ON.
    Und optional OPTION EXPLICIT ON.
    Hier ein CODE-CONVERTER.

    Suchanfragen-Ansatz für GOOGLE.
    Prüfe deinen Beitrag in einer RECHTSCHREIBPRÜFUNG.

    Kurzes googeln hätte dir gezeigt dass eben nicht alle Anwendungen davon betroffen sind.

    Es liegt wohl dann eher weniger an Visual Basic denn am .net Framework. Könnte man wissen wenn man sich ein wenig damit auseinander gesetzt hätte das Visual Basic "nur" eine Sprache im Framework ist. Egal ob VB.net oder C# es wird CIL-Code erzeugt und erst durch den JIT lauffähig.

    Ein Timer Tick ist da nun auch nicht aussagekräftig. Dazu müsste man wissen wie das Framwork den Interval beim Timer berechnet und vielleicht sogar vor Manipulationen schützt.

    Und noch:
    • Klar, man sieht dass du Wert auf Strict On legst
    • Klar kannst du

      Quellcode

      1. .ToString
      ignorieren, wirst du dann halt öfter hören dass es die Möglichkeit gibt.
    • Wenn dein Bild bei einem externen Hoster liegt dann ist es unter Umständen irgendwann nicht mehr verfügbar und fehlt hier im Thread
    • Die Qualität des Bildes ist grottig
    • Eine gute Google Platzierung ist nicht automatisch ein Qualitätsmerkmal. Zumal die Ergebnisse auch mit deinem Suchverlauf kombiniert werden.
    • Es kann keine aktuellste Version geben. Eine Version ist aktuell oder nicht.
    Die deutsche Sprache ist Freeware, du kannst sie benutzen, ohne dafür zu bezahlen. Sie ist aber nicht Open Source, also darfst du sie nicht verändern, wie es dir gerade passt.
    Der Timer benutzt die SetTimer Funktion, wobei Cheat Engine glaube ich nur QueryPerformanceCounter, GetTickCount und TimeGetTime hooked. In einem Forum-Post stand das mal drin, aber den finde ich gerade nicht mehr. Die meisten Spiele benutzen aber den QueryPerformanceCounter, weil der soweit ich weiß die höchste Genauigkeit besitzt. Wenn du dich davor schützen willst, kannst du auch selber, genau wie QueryPerformanceCounter, den rdstc wrappen.
    stackoverflow.com/questions/17…atengines-speed-hack-work

    Da steht alles drin.

    Ceytec schrieb:

    Und nein, normalerweise sind alle Anwendungen davon betroffen. Da jede Anwendung Values besitzt
    Du hast dich speziell auf den Speedhack bezogen, und ich habe speziell für den Speedhack geantwortet, da es sich dabei nicht um eine normale Manipulation von Werten handelt.
    xD Ich fasse zusammen: Die einzigen, der auf meine Frage geantwortet hat ohne mich dabei im irgendeiner Weise als "dumm" darzustellen ist @Bluespide und @EaranMaleasi. An euch danke! Werde diesem Thread nun schließen.

    An die anderen: Spart euch in Zukunft dumme Kommentare. Zu mir sagen, dass ich mich mit der Materie nicht auseinandersetzen würde aber selbst kompletten Stuss über meine Aussagen erzählen. "Google"... Meine Güte, dann öffne ich eben 5 min lange Google. Mal schauen wann die Antwort angeflogen kommt. Wenn ich nicht weiß nach was ich explizit suchen soll hilft so eine "Such"-maschine, die sich nach den "Such"-begriffen orientiert, nicht besonders weiter.
    Bitte benutze OPTION STRICT ON.
    Und optional OPTION EXPLICIT ON.
    Hier ein CODE-CONVERTER.

    Suchanfragen-Ansatz für GOOGLE.
    Prüfe deinen Beitrag in einer RECHTSCHREIBPRÜFUNG.

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von „Ceytec“ ()