Hey liebe Community!
Ich bin ein "noob" und habe keine Ahnung wie man solch einen Thread startet also starte ich mal mit dem üblichen "Ich hab keine Ahnung wie man anfängt..."
Zu meinem Programm -> VB.Net (x32) Application die eine unmanaged/native C++ Dll nutzt um über den Kernel eine gewisse Mänge an Speicher im Heap allocated.
Wozu? -> Neugierde und spaß am neuen verstehen (man kennts doch)
Fehler (exakt) ->
"System.DllNotFoundException: Die DLL "Engine.dll": Das angegebene Modul wurde nicht gefunden. (Ausnahme von HRESULT: 0x8007007E) kann nicht geladen werden.
bei Wibs.Form1.Retrv2(Byte[] bruh, Int32 x)
bei Wibs.Form1.FL001() in C:\Users\Zeto\source\repos\ZYPHERJIX\Wibs\Form1.vb:Zeile 17."
Was ich versucht habe:
-Dll in Sys ordner Kopiert (einfach alle, es waren alle sys Ordern (verzweiflung war groß))
-Dll über Declare und über DllImport "einbinden"
VB - Code
C++ Code [.Header]:
Dll - code [Class]
WICHTIG!!!!
Auf meinem PC funktioniert alles, nur nicht in der virtuellen Maschine (VirtualBox & VmWare).
Dependency-Walker spuckt mir nur Errors aus, die System-dlls sind jedoch alle korrekt (schon ausgetauscht, neuaufgesetzt etc.)
Die richtigen versionen .Net 4.0 und VC++ 10 sind installiert (obwohl es richtiges C++ ist, was ich verwende aber sicherheit geht vor)
sorry für Rechtschreibfehler, ich respektiere euch und vielen Dank im Voraus!
Lg, Ich
Ich bin ein "noob" und habe keine Ahnung wie man solch einen Thread startet also starte ich mal mit dem üblichen "Ich hab keine Ahnung wie man anfängt..."
Zu meinem Programm -> VB.Net (x32) Application die eine unmanaged/native C++ Dll nutzt um über den Kernel eine gewisse Mänge an Speicher im Heap allocated.
Wozu? -> Neugierde und spaß am neuen verstehen (man kennts doch)
Fehler (exakt) ->
"System.DllNotFoundException: Die DLL "Engine.dll": Das angegebene Modul wurde nicht gefunden. (Ausnahme von HRESULT: 0x8007007E) kann nicht geladen werden.
bei Wibs.Form1.Retrv2(Byte[] bruh, Int32 x)
bei Wibs.Form1.FL001() in C:\Users\Zeto\source\repos\ZYPHERJIX\Wibs\Form1.vb:Zeile 17."
Was ich versucht habe:
-Dll in Sys ordner Kopiert (einfach alle, es waren alle sys Ordern (verzweiflung war groß))
-Dll über Declare und über DllImport "einbinden"
VB - Code
Quellcode
- <DllImport("Engine.dll")> Public Shared Function Retrv( ByVal x As Integer) As Integer
- End Function
- Declare Function Retrv2 Lib "Engine.dll" Alias "Retrv" ( ByVal x As Integer) As Integer
- Private Sub FL001() Handles MyBase.Load
- Try
- Retrv( 0)
- Catch ex As Exception
- Try
- Retrv2( 0)
- MsgBox(ex.ToString)
- Catch ex2 As Exception
- MsgBox(ex2.ToString)
- My.Computer.Clipboard.SetText(ex2.ToString)
- End Try
- End Try
- End Sub
C++ Code [.Header]:
C-Quellcode
- #pragma once
- #include <iostream>
- #include <string>
- #include <Windows.h>
- #include <TlHelp32.h>
- #include <fstream>
- #include <winbase.h>
- #ifdef ENGINE_EXPORTS
- #define LIBRARYINJECT_API __declspec(dllexport)
- #else
- #define LIBRARYINJECT_API __declspec(dllimport)
- #endif
- extern "C" LIBRARYINJECT_API int __stdcall Retrv( int x);
- extern "C" LIBRARYINJECT_API int __stdcall BsPsDn();
Dll - code [Class]
Quellcode
- extern "C" LIBRARYINJECT_API int __stdcall Retrv( int kr)
- {
- HANDLE gPH;
- gPH = GetProcessHeap();
- LPVOID meSS = HeapAlloc(
- gPH,
- HEAP_NO_SERIALIZE | HEAP_ZERO_MEMORY,
- 300000000
- );
- if (meSS != 0)
- {
- if (HeapFree(gPH,
- HEAP_NO_SERIALIZE | HEAP_ZERO_MEMORY,
- meSS)) {
- return 420;
- }
- else
- {
- return 2;
- }
- }
- else
- {
- return 0;
- }
- }
WICHTIG!!!!
Auf meinem PC funktioniert alles, nur nicht in der virtuellen Maschine (VirtualBox & VmWare).
Dependency-Walker spuckt mir nur Errors aus, die System-dlls sind jedoch alle korrekt (schon ausgetauscht, neuaufgesetzt etc.)
Die richtigen versionen .Net 4.0 und VC++ 10 sind installiert (obwohl es richtiges C++ ist, was ich verwende aber sicherheit geht vor)
sorry für Rechtschreibfehler, ich respektiere euch und vielen Dank im Voraus!
Lg, Ich