kennt ihr noch denn .dll inejction code?

1 Antwort

Ähm, ja! ^^

"Den" DLL-Injection Code, von dem dein Snippet stammt, kenne ich zwar nicht persönlich, aber auf den ersten Blick kann ich sagen, dass man das auch so machen kann, wenn man denn lustig ist.

(Da fehlt aber noch der größte Teil der Implementierung! Du hast nur den Teil aus der Header-Datei gepostet!)

Außerdem würde ich die Prototypen nicht hinter einem using verstecken, sondern lieber mit Funktionszeigern bzw. -referenzen arbeiten, oder vorzugsweise sogar mit opaquen Templates, aber das bleibt letztendlich dir überlassen.

Wenn dir klar ist, wie DLL-Injection funktioniert, warum fragst du denn dann hier, und saugst dir nicht irgendeine beliebige Implementierung aus den Fingern? Das sind doch nur ein paar Zeilen Code!

Das Ganze klingt, als würdest du nach dem "Code" fragen, mit dem man die ersten Primzahlen bis 1000 finden kann ... das wäre auch a) ein sehr simples Problem, und b) gibt es dafür mehr oder weniger gut geeignete Ansätze.

Wenn du weißt, was DLL-Injection ist, und wie sie funktioniert, warum musst du dann hier nachfragen? Ich verstehe jetzt dein Problem nicht so richtig. :)

Woher ich das weiß:
eigene Erfahrung

C/C++: '&' Ungültige Operation auf Ausdruck einer gebundenen Memberfunktion

PBYTE CDetourDis::CopyBytes(REFCOPYENTRY pEntry, PBYTE pbDst, PBYTE pbSrc)
{
//...
}

typedef PBYTE (CDetourDis::* COPYFUNC)(REFCOPYENTRY pEntry, PBYTE pbDst, PBYTE pbSrc);

struct COPYENTRY 
{
    ULONG       nOpcode         : 8;                // Opcode
    ULONG       nFixedSize      : 3;                // Fixed size of opcode
    ULONG       nFixedSize16    : 3;                // Fixed size when 16 bit operand
    ULONG       nModOffset      : 3;                // Offset to mod/rm byte (0=none)
    LONG        nRelOffset      : 3;                // Offset to relative target.
    ULONG       nFlagBits       : 4;                // Flags for DYNAMIC, etc.
    COPYFUNC    pfCopy;                             // Function pointer.
};  

Hier geschieht der Fehler:

void func()
{
 const COPYENTRY ce = { 0xf6, 3, 3, 1, 0, 0, &CopyBytes }; //hier fehler
}

Compiler sagt:

MSDetours\disasm.cpp(263): error C2276: '&': Ungültige Operation auf Ausdruck einer gebundenen Memberfunktion

Ich habe keine ahnung wie ich das beheben könnte :( bitte um hilfe.

lg HiFriend

...zur Frage

Hallo, kann mir jemand erklären wie ich die sfml 2.3.2 entweder in microsoft visual studio oder Code Blocks einbinde?

ich habe es schon oft versucht doch es kamen immer fehler (nur mit visual studio bei code Blocks weiß ich es nich wie es geht) ein fehler war zb. das die sfml-window-2.dll auf dem Coputer fehlt (habe es überprüft und sie fehlt nicht) . Würde mich freuen wenn mir jemand sagen könnte wie es richtig geht denn ich habe es anscheinend falsch gemacht . Ich habe mir videos von "InformatikTutorial" angesehen. Es ist egal ob ihr es für Code Blocks oder Visual Studio erklärt.

Eine Fehlermeldungen die ich hatte(mit Visual studio 2015): main.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: virtual __thiscall sf::RenderWindow::~RenderWindow(void)" (__imp_??1RenderWindow@sf@@UAE@XZ)" in Funktion "_main". 1>main.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: void __thiscall sf::Window::display(void)" (__imp_?display@Window@sf@@QAEXXZ)" in Funktion "_main". 1>main.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: void __thiscall sf::RenderTarget::clear(class sf::Color const &)" (__imp_?clear@RenderTarget@sf@@QAEXABVColor@2@@Z)" in Funktion "_main". 1>main.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: __thiscall sf::Color::Color(unsigned char,unsigned char,unsigned char,unsigned char)" (__imp_??0Color@sf@@QAE@EEEE@Z)" in Funktion "_main". 1>main.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: bool __thiscall sf::Window::isOpen(void)const " (__imp_?isOpen@Window@sf@@QBE_NXZ)" in Funktion "_main". 1>main.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: __thiscall sf::String::~String(void)" (__imp_??1String@sf@@QAE@XZ)" in Funktion "_main". 1>main.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: __thiscall sf::RenderWindow::RenderWindow(class sf::VideoMode,class sf::String const &,unsigned int,struct sf::ContextSettings const &)" (__imp_??0RenderWindow@sf@@QAE@VVideoMode@1@ABVString@1@IABUContextSettings@1@@Z)" in Funktion "_main". 1>main.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: __thiscall sf::VideoMode::VideoMode(unsigned int,unsigned int,unsigned int)" (__imp_??0VideoMode@sf@@QAE@III@Z)" in Funktion "_main". 1>main.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""__declspec(dllimport) public: __thiscall sf::String::String(char const *,class std::locale const &)" (__imp_??0String@sf@@QAE@PBDABVlocale@std@@@Z)" in Funktion "_main". 1>C:\Users\JanLuca\Documents\Visual Studio 2010\Projects\Sfml\Debug\Sfml.exe : fatal error LNK1120: 9 nicht aufgelöste externe Verweise.

...zur Frage

C# DLL-Datei importieren funktioniert nicht?

Hallo, ich übe gerade C# und möchte in meiner Klasse eine Methode aus einer DLL-Datei verwenden, allerdings funktioniert das nicht :(

So sieht der Code in der DLL-Datei aus:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace testdll
{
    public static class testdll
    {
        public static void Nachricht()
        {
            MessageBox.Show("Hallo!");
        }
    }
}

und so sieht es in dem Projekt aus, in dem ich die Funktion verwenden möchte:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Windows.Forms;
namespace testprogram 
{     
  class Program
  {
    [DllImport("testdll.dll", EntryPoint = "Nachricht")]
    public static extern void Nachricht();
            
    static void Main(string[] args)
    {
      try
      {
         Nachricht();
      }
      catch(ArgumentException e)
      {
         MessageBox.Show(e.ToString());
      }
    }
  }
}

Als Fehlermeldung bekomme ich: "Der Einstiegspunkt "Nachricht" wurde nicht in der DLL "testdll" gefunden".

Vielleicht weis hier jemand was ich noch machen muss damit das Gelump endlich mal läuft.

Und ich möchte die DLL nicht mit einem Verweis einbinden, sondern mit diesem DllImport, wenns geht.

...zur Frage

Unity 5 C# Script Hilfe // Player immer nach rechts bewegen lassen ohne irgendein Knopf drücken zu müssen?

Hey Community irgendwelche Auskenner in Unity ? In der Sprache C#

Ich möchte nämlich ein Spiel machen wo der Player immer nach Rechts automatisch läuft. Ich bedanke mich für jeden der Antwortet.

Mein bisheriges PlayerController Script:

using UnityEngine; using System.Collections;

public class PlayerController : MonoBehaviour {

public float maxSpeed = 4;
public float jumpForce = 550;

private Rigidbody2D rb2d;
private bool jump = false;

// Use this for initialization
void Start () {
    rb2d = GetComponent<Rigidbody2D>();

}

// Update is called once per frame
void Update () {
    if (Input.GetButtonDown ("Jump"))
        jump = true;

}

void FixedUpdate()
{
    float hor = Input.GetAxis ("Horizontal");
    rb2d.velocity = new Vector2 (hor * maxSpeed, rb2d.velocity.y);

    if(jump)
    {
        rb2d.AddForce (new Vector2(0,jumpForce));
        jump = false;
    }
}

}

...zur Frage

(Gelöst) Unity3D / C#: Per Mausklick auf ein bestimmtes Objekt soll man in die nächste Szene kommen. Könnt ihr mir dabei helfen?

Hallo!

Wie oben schon steht, möchte ich ein Spiel in Unity programmieren, in dem man auf ein bestimmtes Objekt klicken muss und daraufhin in eine weitere Szene kommt.

Leider sitze ich seit zwei Stunden dran und finde keine Lösung. Es wäre sehr nett, wenn ihr mir da helfen könntet.

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;

public class Klick : MonoBehaviour
{
  public GameObject target;

  private void OnMouseDown()
  {
    if (target != null)
    {
      SceneManager.LoadScene(SceneManager.GetActiveScene().buildIndex + 1);
    }
  }
}
...zur Frage

2D array per reference an eine funktion übergeben?

void func(std::string [][2]);

^für ein 2d array, wie übergebe ich das ganze per referenz?

...zur Frage

Was möchtest Du wissen?