Archiv verlassen und diese Seite im Standarddesign anzeigen : vb.net allgemein zu dll´s
Hey ho.
Ich würde mich gerne ein wenig mit API funktionen und dll´s beschäftigen, um andere programmfunktionen zu übernehmen. Ich habe bis jetzt noch kein tut gefunden, wo erklärt wurde, wie man eine fremde dll in sein programm einbaut. Vor langerzeit hatte ich mir mal vorgenommen nen kleinen winrar bruter zu schreiben, projekt ist aber an dem zuvor geschildertem Problem gescheitert... beispiele habe ich relatiev wenige gefunden, oder ich war einfach zu blind...
In dieser richtung fehlt mir leider eine menge grundwissen... vlt könnte mir ja iwer helfen, ein wenig auf die sprünge helfen und versuchen zu erklären, wie man eine fremde dll in sein programm einbaut und verwendet.
grüße
Alex
Imports System.Runtime.InteropServices;
<DllImport("user32.dll", SetLastError:=True, CharSet:=CharSet.Auto)> _
Private Shared Function ShowWindow(ByVal hwnd As IntPtr, ByVal nCmdShow As Int32) As Boolean
End Function
okay, das ganze stellt mir die funktion ShowWindow zur verfügung.
http://msdn.microsoft.com/en-us/library/ms633548%28VS.85%29.aspx
Sie nimmt Parameter entgegen, da ich ein wenig durcheinander...
Ich muss sagen es ist viel einfach die besagte dll als Verweis zum Projekt hinzuzufügen. Der Vorteil ist , das man mit dem Objektbrowser die funktionen der dll gut einsehen und dann ansteuern kann.
Also als Verweis hinzufügen , und von der besagten klasse der dll ein Objekt erzeugen , und schon kann man die Funktionen verwenden ;)
MfG
soweit ich weiß0 kann man aber einige dlls ncht einfach als verweis importieren =$
berichtigt mcih wenn ich falsch liege
soweit ich weiß0 kann man aber einige dlls ncht einfach als verweis importieren =$
berichtigt mcih wenn ich falsch liege
Ja das stimmt. Es muss sich um eine COM oder .NET dll handeln. Sonst wirst du wohl nicht um dll import herumkommen.
MfG
Er kann doch auch Private Declare Function Lib "user32.dll" _ ....usw. nehmen.
Warum mit .dll import ?
soweit ich weiß0 kann man aber einige dlls ncht einfach als verweis importieren =$
berichtigt mcih wenn ich falsch liege
Nur .NET Dlls können als Verweis importiert werden..
user32.dll, comdlg32.dll et cetera können nur per DLLImport genutzt werden.
Er kann doch auch Private Function "user32.dll" Lib _ ....usw. nehmen.
Warum mit .dll import ?
Weil ich so in C# arbeite ;-) Man kann natürlich auch deine Variante nehmen.
Ja aber er könnte doch trotzdem funktionen aus ihnen aufrufen.
Aus der user32.dll zumindest siehe hier:
http://www.v-basic.de/vboard/Syntax_dllImport.html
mfg
hmmmpf =$
WIe sieht das denn mit den funktions namen in den dlls aus, die kann ich ja nicht auf anhieb wissen, genau so wie die zu übergebenden parameter, wenn Kolabi (http://free-hack.com/member.php?u=36842)´s methode benutze
hmmmpf =$
WIe sieht das denn mit den funktions namen in den dlls aus, die kann ich ja nicht auf anhieb wissen, genau so wie die zu übergebenden parameter, wenn Kolabi (http://free-hack.com/member.php?u=36842)´s methode benutze
Dafür kann man pinvoke benutzen.
http://www.pinvoke.net/index.aspx
Powered by vBulletin® Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.