PDA

View Full Version : سوال: کمک در مورد استفاده از فایلهای dll ویندوز



oliya24
دوشنبه 18 بهمن 1389, 15:07 عصر
سلام من مدتی که میخواستم این کار رو انجام بدم و همش دچار مشکل میشم کسی هست که من رو راهنمایی کنه و در این مورد یک مثل هم بزنه ممنون میشم

ACorvinus
جمعه 22 بهمن 1389, 13:47 عصر
سلام
براي اين كار مي تونيد از كلاس DllImport كه در فضاي نام System.Runtime.InteropServices قرار دارد استفاده كنيد. به عنوان مثال:

[DllImport("user32.dll", CharSet = CharSet.Unicode)]
public static extern int MessageBox(IntPtr hWnd, String text, String caption, uint type);

static void Main()
{
// Call the MessageBox function using platform invoke.
MessageBox(new IntPtr(0), "Hello World!", "Hello Dialog", 0);
}

alimanam
جمعه 22 بهمن 1389, 20:16 عصر
با سلام

دوست عزیز ( ACorvinus (http://barnamenevis.org/member.php?78072-ACorvinus) ) فکر کنم تالار وی بی دات نت هست !!! به نظرم درست نیست کدی که سینتکس #C باشه رو برای جواب دادن به این دوستمون معرفی میکردین حتماً دلیلش رو هم میدونین دیگه :متفکر:

و اما جواب دوستی که سوال داشتن :

همون طور که دوست خوبم گفتن در ابتدا همون فضای نام رو معرفی کنین بعد به طور مثال میتونین اینجوری از توابع اون فایل dll استفاده کنین .


<DllImport("urlmon", EntryPoint:="URLDownloadToFileA", CharSet:=CharSet.Ansi, SetLastError:=True, ExactSpelling:=True)> _
Private Shared Function URLDownloadToFile(ByVal pCaller As Integer, <MarshalAs(UnmanagedType.VBByRefStr)> ByRef szURL As String, <MarshalAs(UnmanagedType.VBByRefStr)> ByRef szFileName As String, ByVal dwReserved As Integer, ByVal lpfnCB As Integer) As Integer
End Functionودر آخر میتونین به این صورت یکی از تابع مورد نظر که در کد بالا تعریف شده استفاده کنین :


Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Try
Dim szFileName As String = (Application.StartupPath & "\Update.txt")
Dim szURL As String = "standard url path !" ' exp : http://www.mysite.com/myfile.txt
URLDownloadToFile(0, (szURL), (szFileName), 0, 0)
Catch exception1 As Exception

End Try

End Subموفق باشید