| |
|
|
Thomas Freier | Como incluso kein WIN7 y nichts probieren kann: Tiene una una Code, con el todos Desktopverknüpfungen ermittelt voluntad puede? Anlegen y el Ziel ggf. ändern, Yo ya con Andreas Ole_ShellLink.inc, bajo WIN7 en una erfolgreich testen dejar. Nur el Auflisten ging gegenüber XP voll daneben. |
|
|
| |
|
|
|
| Hab kein Win7 a Hand -
hast Usted sinngemäß aber con XProfan ya folgendes Versucht... ?
y luego simplemente en todos gelisteten Verzeichnisse\Desktop ir. |
|
|
| |
|
|
|
Thomas Freier | Yo denke.
'Rekursive Búsqueda después de Archivos
'aufgeschrieben por Thomas Glockmann bajo Mithilfe
'de David Strutz y Frank Abbing
Def FindFirstFile(2) !"kernel32","FindFirstFileA"
Def FindNextFile(2) !"kernel32","FindNextFileA"
Def FindClose(1) !"kernel32","FindClose"
Def Desktop(0) ReadIni$("Hkey_1","Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders","Desktop")
Def StartMenueProgramme(0) ReadIni$("Hkey_1","Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders","Programs")
Struct WIN32_FIND_DATA=dwFileAttributes&,ftCreationTime#(8),ftLastAccessTime#(8),\
ftLastWriteTime#(8),nFileSizeHigh&,nFileSizeLow&,dwReserved0&,dwReserved1&,\
cFileName#(260),cAlternate#(14)
Declarar Pos&
Declarar HandleA&[]
Declarar HandleA$[]
Declarar Verz&
Declarar Datei&
Declarar FH&
Declarar FindData#
Declarar PM$
Dim FindData#, Win32_Find_Data
Declarar Pfad$
Declarar Maske$
Proc DateiListe
Parámetros Pfad$,Maske$
PM$ = Pfad$ + "\\" + Maske$
FH& = FindFirstFile(Addr(PM$),FindData#)
Mientras que (Pos& >= 1) And (FH& >= 0) = 1
Repeat
If (@String$(FindData#,44) <> ".") And (@String$(FindData#,44) <> "..")
If (FindData#.dwFileAttributes& & $10) = $10
Inc Verz&
HandleA&[Pos&] = FH&
HandleA$[Pos&] = Pfad$
Pfad$ = Pfad$ + "\\" + @String$(FindData#,44)
Inc Pos&
Dateiliste(Pfad$,Maske$)
Más
Inc Datei&
AddStrings(DAT_LV%,Pfad$ + "\\" + @String$(FindData#,44))
EndIf
EndIf
Until FindNextFile(FH&,FindData#) = 0
Dec Pos&
If Pos& >= 1
FH& = HandleA&[Pos&]
Pfad$ = HandleA$[Pos&]
Case FindNextFile(FH&,FindData#) = 0 : Romper
Más
Romper
EndIf
EndWhile
ENDPROC
Pos& = 1
Cls
var font&=CreateFont(Arial,16,0,0,0,0)
var DAT_LV%=CreateListBox(%hwnd,"",10,30,610,376)
SetFont DAT_LV%,font&
var a$=translate$(Desktop(0),"\","\\")
Imprimir "Suche..."+a$
DateiListe(a$,"*")
FindClose(FH&)
WaitInput
DeleteObject font&
end
|
|
|
| |
|
|
|
| ¿Por qué sol höllenkompliziert o. qué spricht dagegen ... ?
Windows-Versionen con UAC puede esta natürlich el Wechseln en el Verzeichnisse verhindern. |
|
|
| |
|
|
|
Thomas Freier | Geht en una Actualización en una DAU. Hatte ya früher antes Ort mehrere Altversionen gefunden. Zukünftig Yo quería via Email y Programa updaten. Also sólo una vez todos alten ***.exe suchen y umbennen. Um el gültigen Arbeitsordner a erfahren entonces el Ziel el Verknüpfung en el Desktop ermitteln. . Deshalb el algo "höllenkomplizierte" Code, el, hier lejos, todos gefundenen Verknüpfungen y ***.exe en un **.txt schreibt, el Yo entonces bekomme para el Updateanpassung.
Apéndice Im Principio debería lo así serWindows 7: Pfad para Desktop
Der Desktop des gerade angemeldeten Benutzers es en el folgenden Ordner para encontrar:
Original-Windows-7-Pfad: C:\Users\[Benutzername]\Desktop Pfad-Bezeichnung en el Alemán Windows-7-Versión: C:\Benutzer\[Benutzername]\Desktop
Pfad bajo Windows XP, 2000, 2003 (dt.): C:\Dokumente y Einstellungen\[Benutzername]\Desktop
In el erzeugten **.txt fand Yo entonces una Línea, el vermutlich el gesuchte Verknüpfung ser podríaC:\Users\Lund\AppData\Roaming\\\\\\\Microsoft\Windows\Recent\JLKurier.lnk Damit kann Yo vermutlich el alte ***.lnk no löschen. |
|
|
| |
|
|
|
Andreas Miethe
| Wenn Yo el correcto verstehe willst Usted todos *.lnk auflisten y el Pfad extrahieren ?
Anbei una Incluir y una kleiner Testcode |
|
|
| XProfan X2Gruss Andreas ________ ________ ________ ________ _ Profan 3.3 - XProfanX2 Win 95,98,ME,2000,XP,Vista - Win 7 32 / 64 Bit ASUS X93S - Intel Core I7-NVIDIA GForce 540M 8GB Arbeitsspeicher Homepage : [...] | 15.12.2012 ▲ |
|
|
|
|
Thomas Freier | Gracias Andreas, en WIN7 hast du lo sicher getestet. En me con XP kommt alles como esperado (no).....una Endlosschleife....como no *.lnk disponible. Bitte una vez adaptar:
|
|
|
| |
|
|
|
Andreas Miethe
| Dann versuch doch veces el Pfad para todos Benutzer
GSFP(0,ADDR(Desktop$),25,0)'Pfad Alle Benutzer-Desktop
Lo son sí mehrere Möglichkeiten.
En me funktioniert el de paso auch con XP |
|
|
| Gruss Andreas ________ ________ ________ ________ _ Profan 3.3 - XProfanX2 Win 95,98,ME,2000,XP,Vista - Win 7 32 / 64 Bit ASUS X93S - Intel Core I7-NVIDIA GForce 540M 8GB Arbeitsspeicher Homepage : [...] | 15.12.2012 ▲ |
|
|
|
|
Thomas Freier | Andreas, es doch alles super. Yo habe no *.lnk . El gängigen Programas son en el Launcher . Und el Bucle endet no en:
Gönnst du deiner Ole_ShellLink.inc todavía una pequeña Referencia en el letzten Stand.
|
|
|
| |
|
|
|
Andreas Miethe
| Ok, Tengo el veces para X2 adaptado. El Incluir sowie el Beispiele.
En Usted Ahora debe auch algo beim Auslesen adecuado voluntad, como en el Ejemplo el Startmenü ausgelesen se. |
|
|
| XProfan X2Gruss Andreas ________ ________ ________ ________ _ Profan 3.3 - XProfanX2 Win 95,98,ME,2000,XP,Vista - Win 7 32 / 64 Bit ASUS X93S - Intel Core I7-NVIDIA GForce 540M 8GB Arbeitsspeicher Homepage : [...] | 16.12.2012 ▲ |
|
|
|
|
Thomas Freier | Gracias, se ejecuta alles como se. |
|
|
| |
|
|