Dateien unter Vista Suchen
- VB.NET
Sie verwenden einen veralteten Browser (%browser%) mit Sicherheitsschwachstellen und können nicht alle Funktionen dieser Webseite nutzen.
Hier erfahren Sie, wie einfach Sie Ihren Browser aktualisieren können.
Hier erfahren Sie, wie einfach Sie Ihren Browser aktualisieren können.
Es gibt 20 Antworten in diesem Thema. Der letzte Beitrag () ist von tobikubi.
-
-
-
-
-
-
hallo tobikubi,
hast du das mit uac schon probiert ?
projekt eigenschaften -> anwendung -> uac einstellungen (englisch:view uac settings)
dort kannst du dann adminrechte vergeben
einfach die kommentare lesen
schönen abend noch
mikeb69 -
mikeb69 schrieb:
schönen abend noch
ist das jetzt eine beleidigung?
egal, meinst du jetzt, ich sool das auf ändern?
wenn ja dan klappt es immer noch nicht! -
hallo tobikubi,
warum soll ich dich beleidigen - es ist doch abend oder ?
nein - wenn du es auf highest available setzt werden die rechte des aktuellen users auf die höchstmöglichen (für diesen user) gesetzt.
setz es auf requireAdministrator
schönen abend noch
mikeb69 -
-
-
-
Bevor hier immer nur weiter auf Microsoft respektive Vista herumgehackt wird, sollte der tobikubi doch einfach mal seinen Code posten, mit welchem er die Verzeichnisse durchsucht. Ich habe unter Vista mit eingeschalteter UAC keine Probleme mittels
IO.Directory.GetFiles alle Dateien aus den Systemverzeichnissen zu lesen.
@Mad Andy:
Vista ist ja ein ordentlicher Kack
"Sie sind dabei ein schlechtes Betriebssystem zu installieren! Fortsetzen oder abbrechen?"
Muss sowas sein? Das du kein Freund von Microsoftprodukten bist, ist ja offensichtlich, aber solche Kommentare sind einfach billig. -
hallo tobikubi,
hab mich jetzt - bei meinem guru - mal schlau gemacht !
so sachen wie 'dokumente und einstellungen' gibt es unter vista nicht mehr.
wenn ich meinen selbst gebastelten datei-browser mit adminrechten unter vista starte finde ich aber z.b. c:\users
und darin finde ich alle dateien, die früher unter dokumente und einstellungen\mein user zu finden waren !!!
also - mit uac findest du schon alle dateien,
vorraussetzung:
du musst es richtig machen und
an den richtigen stellen suchen !!!
beipsiel:
der userpfad auf dem vista rechner ist (laut vista datei-explorer)
c:\benutzer\username (unter xp wäre das c:\dokumente und einstellungen\username)
mein datei-explorer der nur die festplatte durchkämmt und es anzeigt wie es kommt meldet
c:\users\username
empfehlung meines guru !
die environment-klasse verwenden wenn es um den pfad von system-ordnern geht !!!!!!!
gute nacht
mikeb69 -
-
-
hallo tobikubi,
wie gesagt - unbedingt die environment klasse verwenden !!!
diese gibt dir alle systemordner zurück !
stell dir mal vor deine anwendung wird auf einem englischen pc ausgeführt !!!
gruss
mikeb69 -
-
hallo tobikubi,
da wird man dann ohne etwas code kaum eine aussage treffen können.
wie machst du's denn ?
in meinem datei-browser verwende ich z.b. die findfirstfile findnextfile api's
aber daran wird es ja kaum liegen !?!
gruss
mikeb69 -
-
hallo tobikubi,
hier eine etwas abgewandelte funktion wie sie auch so in meinem dateiexplorer vorkommt.
statte das ganze mit adminrechten aus und schau mal ob dann die dateien gefunden werden.
übrigens - die api's sind etwa 7x schneller als die entsprechenden framework funktionen
hier der code:
VB.NET-Quellcode
- Imports System
- Imports System.IO
- Imports System.Runtime
- Imports System.Runtime.InteropServices
- Public Class Form1
- Private Declare Auto Function FindFirstFile Lib "kernel32.dll" (ByVal lpFileName As String, ByRef lpFindData As WIN32_FIND_DATA) As IntPtr
- Private Declare Auto Function FindNextFile Lib "kernel32.dll" (ByVal hFindFile As IntPtr, ByRef lpFindData As WIN32_FIND_DATA) As IntPtr
- Private Declare Function FindClose Lib "kernel32.dll" (ByVal hFindFile As IntPtr) As Boolean
- <StructLayout(LayoutKind.Sequential, CharSet:=CharSet.Auto)> _
- Private Structure WIN32_FIND_DATA
- Public sfileAttributes As Int32
- Public creationTime_lowDateTime As Int32
- Public creationTime_highDateTime As Int32
- Public lastAccessTime_lowDateTime As Int32
- Public lastAccessTime_highDateTime As Int32
- Public lastWriteTime_lowDateTime As Int32
- Public lastWriteTime_highDateTime As Int32
- Public nFileSizeHigh As Int32
- Public nFileSizeLow As Int32
- Public dwReserved0 As Int32
- Public dwReserved1 As Int32
- <MarshalAs(UnmanagedType.ByValTStr, SizeConst:=MAX_PATH)> _
- Public fileName As String
- <MarshalAs(UnmanagedType.ByValTStr, SizeConst:=14)> _
- Public alternateFileName As String
- End Structure
- Private Const MAX_PATH As Integer = 260
- Private Const INVALID_HANDLE_VALUE As Integer = -1
- Private Const FILE_ATTRIBUTE_DIRECTORY As Integer = &H10
- Private files As New List(Of String)
- Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
- files = FindFiles(System.Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), "*.*")
- Stop
- End Sub
- Public Function FindFiles(ByVal folder As String, ByVal pattern As String) As List(Of String)
- Dim ret As New List(Of String)
- Dim w32data As New WIN32_FIND_DATA
- Dim Handle As Integer = FindFirstFile(Path.Combine(folder, "*.*"), w32data)
- If Handle <> INVALID_HANDLE_VALUE Then
- Dim Search As Boolean = True
- Do
- 'Handelt es sich um ein Verzeichnis?
- If (w32data.sfileAttributes And FILE_ATTRIBUTE_DIRECTORY) = FILE_ATTRIBUTE_DIRECTORY Then
- 'Verzeichnisnamen ermitteln und für den späteren rekursiven Aufruf speichern
- If w32data.fileName <> "." And w32data.fileName <> ".." Then
- End If
- Else
- 'es ist eine datei
- ret.Add(w32data.fileName)
- End If
- Loop Until FindNextFile(Handle, w32data) = False
- 'handle schliessen
- FindClose(Handle)
- End If
- Return ret
- End Function
- End Class
gruss
mikeb69
-
Benutzer online 1
1 Besucher
-
Ähnliche Themen
-
"Freie" Speicherorte unter Windows Vista/7
mguenther1992 - - Off-Topic
-
2 Benutzer haben hier geschrieben
- Gast (14)
- mikeb69 (7)