Google Mail Kalender Text & Tabellen Reader Web Mehr »
Kürzlich besuchte Gruppen | Hilfe | Anmelden
Google Groups-Startseite
Nachricht von Diskussion NetFileEnum InterOP Problem
Bei der Gruppe, für die Sie eine Mitteilung verfassen, handelt es sich um eine Usenet-Gruppe. Wenn Sie in dieser Gruppe Nachrichten posten, ist Ihre E-Mail-Adresse für jeden im Internet sichtbar
Ihre Antwort wurde nicht gesendet.
Die Nachricht wurde übermittelt.
 
Von:
An:
Cc:
Nachtrag zu:
Cc hinzufügen | Nachtrag hinzufügen zu | Betreff bearbeiten
Betreff:
Bestätigung:
Geben Sie zur Bestätigung die im folgenden Bild angezeigten Zeichen oder die durchgesagten Zahlen ein, indem Sie auf das Eingabesymbol klicken. Hören Sie zu und geben Sie die gehörten Zahlen ein
 
Olaf Stagge  
Profil anzeigen   Übersetzen in die Sprache: Übersetzt (Original anzeigen)
 Weitere Optionen 27 Mai 2005, 14:41
Newsgroups: microsoft.public.de.german.entwickler.dotnet.vb
Von: "Olaf Stagge" <olaf.stagge....@ts.siemens.de>
Datum: 27 May 2005 05:41:14 -0700
Lokal: Fr. 27 Mai 2005 14:41
Betreff: Re: NetFileEnum InterOP Problem
Danke Thomas für Deine Unterstützung.

Für alle, die es interessiert hier die Lösung:
Olaf

Imports System.Runtime.InteropServices

Public Class classNetFile

    Declare Unicode Function NetFileEnum Lib "netapi32.dll" (ByVal
servername As String, ByVal basepath As String, ByVal username As
String, _
            ByVal level As Integer, ByRef bufptr As IntPtr, ByVal
prefmaxlen As Integer, ByRef entriesread As Integer, _
            ByRef totalentries As Integer, ByVal resume_handle As
IntPtr) As Integer

    Declare Unicode Function NetFileClose Lib "netapi32.dll" (ByVal
servername As String, ByVal fileid As Integer) As Integer

    Declare Unicode Function NetApiBufferFree Lib "netapi32.dll" (ByVal
buffer As IntPtr) As Integer

    <StructLayout(LayoutKind.Sequential, CharSet:=CharSet.Auto,
Pack:=4)> _
    Structure FILE_INFO_3
        Dim fi3_id As Integer
        Dim fi3_permission As Integer
        Dim fi3_num_locks As Integer
        Dim fi3_pathname As String
        Dim fi3_username As String
    End Structure

       Public Function EnumNetFile(ByVal ServerName As String) As
Integer
        If ServerName = "." Then ServerName = Nothing
        Const MAX_PREFERRED_LENGTH As Integer = -1
        Dim dwReadEntries As Integer
        Dim dwTotalEntries As Integer
        Dim pBuffer As IntPtr = IntPtr.Zero
        Dim pCurrent As FILE_INFO_3 = New FILE_INFO_3

        Dim dwStatus As Integer = NetFileEnum(ServerName, Nothing,
Nothing, 3, pBuffer, MAX_PREFERRED_LENGTH, dwReadEntries,
dwTotalEntries, IntPtr.Zero)
        If dwStatus = 0 Then
            Dim dwIndex As Integer = 0
            While dwIndex < dwReadEntries
                Dim iPtr As IntPtr = New IntPtr(pBuffer.ToInt32 +
(dwIndex * Marshal.SizeOf(pCurrent)))
                pCurrent = CType(Marshal.PtrToStructure(iPtr,
GetType(FILE_INFO_3)), FILE_INFO_3)
                Console.WriteLine("dwIndex={0}", dwIndex)
                Console.WriteLine(" id={0}", pCurrent.fi3_id)
                Console.WriteLine(" num_locks={0}",
pCurrent.fi3_num_locks)
                Console.WriteLine(" pathname={0}",
pCurrent.fi3_pathname)
                Console.WriteLine(" permission={0}",
pCurrent.fi3_permission)
                Console.WriteLine(" username={0}",
pCurrent.fi3_username)

System.Math.Min(System.Threading.Interlocked.Increment(dwIndex),
dwIndex - 1)
            End While
            NetApiBufferFree(pBuffer)
        End If
        Return dwStatus
    End Function
End Class


    Weiterleiten  
Sie müssen sich anmelden, bevor Sie Nachrichten veröffentlichen können.
Bevor Sie eine Nachricht posten können, müssen Sie zunächst dieser Gruppe beitreten.
Bitte aktualisieren Sie vor dem Posten in den Abonnementeinstellungen Ihren Spitznamen.
Sie haben nicht die erforderliche Berechtigung zum Posten.

Eine Gruppe erstellen - Google Groups - Google-Startseite - Nutzungsbedingungen - Datenschutzbestimmungen
©2010 Google