Funktionsnamen wieder "dekorieren"



  • Hallo 🙂

    Um einen Funktionsnamen zu undekorieren, gibt es ja die Funktion
    UnDecorateSymbolName. Allerdings möchte ich gerne, wenn ich den
    undekorierten Namen kenne ("void Bla::Blub::func(int *)") den
    dekorierten Namen bekommen, um die Funktion aus einer DLL zu laden.

    Wie kann man das machen?



  • den kennst du schon



  • ist aber kompilerabhängig wie der name heißt. natürlich könnte man
    den namen nachgucken, aber es geht ja darum in zu "berechnen"

    wenn ich z.b. void *CreateIrgentwas(float *, const double ***, name::space x 😉
    habe, mach der kompiler z.b. v4@CreateIrgentwas@ahfg4pcpdppp@d@name@wewspace@p4
    drauß.

    diesen namen brauche ich aber um die funktion via GetProcAddress zu laden.
    die extern "C" methode will ich nicht verwenden, da dass namespaces und klassen
    verbietet...


  • Mod

    Den dekorierten Namen benötigst Du nicht, wenn Du extern "CE verwendest oder/undeine DEF Datei.


Anmelden zum Antworten