CA1060 urlmon.dll P/Invokes in NativeMethods-Klasse verschieben

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 1 Antwort in diesem Thema. Der letzte Beitrag () ist von hal2000.

    CA1060 urlmon.dll P/Invokes in NativeMethods-Klasse verschieben

    Ich verwende Visual Basic 2013 und habe bei der Codeanalyse folgende Fehlermeldung.

    CA1060 P/Invokes in NativeMethods-Klasse verschieben
    Als P/Invoke-Methode muss 'DownloadFileThread.urldownloadtofile(Integer, String, String, Integer, Integer)' in einer Klasse mit dem Namen NativeMethods, SafeNativeMethods oder UnsafeNativeMethods definiert werden.
    WindowsApplication9 - Form1.vb (Zeile 5)

    Hier dazu der folgenede Code:

    VB.NET-Quellcode

    1. Imports System.Runtime.InteropServices
    2. Public Class DownloadFileThread
    3. <DllImport("urlmon.dll", CallingConvention:=CallingConvention.StdCall, CharSet:=CharSet.Unicode, EntryPoint:="URLDownloadToFileW", ExactSpelling:=True, SetLastError:=True)> _
    4. Public Shared Function urldownloadtofile(ByVal pCaller As Integer, ByVal szurl As String, ByVal szfilename As String, ByVal reserved As Integer, ByVal callback As Integer) As Integer
    5. End Function
    6. Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    7. DownloadFileThread.urldownloadtofile(0, "https://www.vb-paradise.de/index.php/Attachment/27191-DesignerView-jpg", "27191-DesignerView.jpg", 0, 0)
    8. End Sub
    9. End Class


    Folgende Zeile verursacht diesen Fehler:

    VB.NET-Quellcode

    1. Public Shared Function urldownloadtofile(ByVal pCaller As Integer, ByVal szurl As String, ByVal szfilename As String, ByVal reserved As Integer, ByVal callback As Integer) As Integer


    Jetzt weiß ich leider nicht, was ich ändern muss, damit es keinen Fehler mehr gibt. Vielleicht kann mir hier jemand einen Denkanstoß geben.