Fehler mit regsvr32.exe (Invalid Access To Memory Location)



  • Hi!

    Ich hab mir eine DLL erstellt, die auch die nötigen Einstiegspunkte definiert, um sie mit regsvr32 registrieren zu können.

    Dann hab ich in meiner DLL eine Klasse, die über JNI auf Java zugreift.
    Sobald ich dieses ganze für JNI nötige Zeugs inkludiere, kann ich die DLL nicht mehr registieren, es erscheint die Fehlermeldung "Invalid Access To Memory Location"

    Kann mir da jemand helfen, zumindest vielleicht, wo ich suchen muss? Sobald ich den JNI-Kram rauswerfe, kann ich die dll wieder problemlos registrieren. Es kann aber auch nicht an JNI an sich liegen, denn in einem früheren Stadium meines Programmes funktionierte beide zusammen noch. Nur leider hab ich das nimmi. 😕

    danke!



  • Setzt doch einfach mal nen breapoint in the die DllRegisterServer (das ist du funktion die von regsvr32 aufgerufen wird) funktion und debuge es dann zeile für zeile durch, dann sieht du ja wo es knallt.



  • CMatt schrieb:

    Setzt doch einfach mal nen breapoint in the die DllRegisterServer (das ist du funktion die von regsvr32 aufgerufen wird) funktion und debuge es dann zeile für zeile durch, dann sieht du ja wo es knallt.

    hmm und wie debugge ich die dll? ist ja nocht ausführbar direkt 😕
    oder wähle ich dann als app regsvr32?



  • jep.
    Wenn du VC++ verwendest einfach unter Debugging -> Command regsvr32 angeben und als Command Argument die parameter.



  • Un im notfall regsvr selber bauen (macht nichts anderes als ein LoadLibrary - GetProcAddress("DllRegisterServer") -> aufruf.


Anmelden zum Antworten