Español
Fuente/ Codesnippets

Desktop Finden Knownfolders Knownfoldersid Ole Ole32 Ordner Spezielle Vista Windows

 

Nico
Madysa

KompilierenMarcaSeparación
' gilt ab Windows Vista oder höher
declare Long hShell32, hOle32

proc Init

    hOle32 = ImportDLL("OLE32", "ole.")
    hShell32 = ImportDLL("SHELL32", "shell.")
    ole.CoInitialize(0)

endproc

proc Exit

    ole.CoUnInitialize()
    FreeDLL hOle32
    FreeDLL hShell32

endproc

proc GetCurrentDesktopPath

    declare String KnownFoldersID_Desktop, Long pPath, String desktopPath
    /* Die KnownFolders IDs stehen (mehr oder weniger in Klartext)
    in Microsofts knownfolders.h Headerdatei. Es sind nichts
    Anderes als ein Haufen 16 Byte lange Konstanten. Aus
    ihnen wiederum können die Pfade der verschiedensten
    speziellen Ordner bezogen werden, selbst wenn diese vom
    Nutzer verschoben worden sind.                              */
    KnownFoldersID_Desktop = "\x3A\xCC\xBF\xB4\x2C\xDB\x4C\x42\xB0\x29\x7F\xE9\x9A\x87\xC6\x41"
    shell.SHGetKnownFolderPath(Addr(KnownFoldersID_Desktop), 0, 0, Addr(pPath))
    ' Die obige Funktion hat uns die Adresse eines neu
    ' erzeugten Strings gegeben. Wir basteln daraus
    ' wieder einen XProfan-String.
    desktopPath = StringW$(pPath, 0)
    ole.CoTaskMemFree(pPath)
    return desktopPath

endproc

cls
Init()
print GetCurrentDesktopPath()
Exit()
waitinput
end
 
28.02.2014  
 




Jörg
Sellmeyer
Für welche Windowsversion gilt el? Mit XP bekomme Yo una Fehlermeldung, dass el Función shell.SHGetKnownFolderPath unbekannt es.
Außerdem Es el Variable hShell32 no deklariert. Dafür se hUser32 no verwendet...

Zumindest bajo XP es tan completamente easy:
KompilierenMarcaSeparación
Def Desktop(0) ReadIni$("Hkey_1","Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders","Desktop")
Print Desktop()
waitinputre>
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
28.02.2014  
 




Nico
Madysa
Jörg Sellmeyer (28.02.14)

Für welche Windowsversion gilt el? Mit XP bekomme Yo una Fehlermeldung, dass el Función shell.SHGetKnownFolderPath unbekannt es.


Ab Windows 7 geht's y yo habe no Grund anzunehmen, dass lo bajo Vista no klappt. Posesiones veces "ab Windows Vista" hinzugefügt.

Jörg Sellmeyer (28.02.14)

Außerdem Es el Variable hShell32 no deklariert. Dafür se hUser32 no verwendet...


Mein Fehler. Variable war falso deklariert, hab's korrigiert. War ya spät, como Yo así rumgefummelt hatte.

Jörg Sellmeyer (28.02.14)

Zumindest bajo XP es tan completamente easy:


Bin encima esta "Known Folders" Sache en el MSDN gestolpert y lo ha el Anschein, dass el el de M$ bevorzugte Método es, esta speziellen Pfade abzugreifen.

Ein Blogartikel de 2003 [...]  erklärt, dass el "Shell-Folders"-Registry-Schlüssel sólo de Kompatibilitätsgründen con irgendwelchen obskuren Programmen de 1994 existiert y no mehr verwendet voluntad debería.
El Función SHGetSpecialFolderLocation , el en él stattdessen vorgeschlagen se, es mittlerweile nochmals  abgelöst worden, y zwar de SHGetKnownFolderPath  [...] , el Función, el Yo oben verwendet habe.

Wenn Yo el Ressourcen a el Thema correcto verstanden habe, ha el Registryschlüssel "Shell Folders" bajo Windows actualmente etwa el Status, el Add-, Sub- y el otro veralteten Características en XProfan 10 hatten. Ob du ihn más verwendest, es trotzdem deine Sache.
 
28.02.2014  
 




Michael
Wodrich
Wahrscheinlich ha cada Microsoft-Mitarbeiter como seine propio Rutina. Gott sei Dank son el no todos así mitteilsam como algunos wenige ...
Como hätte wirklich una einzige Möglichkeit voll ausgereicht. Jetzt weiß uno otra vez no, welche el vielen Möglichkeiten uno nutzen debería.

Su Fundstück se ejecuta en una Vista Ultimate bastante hervorragend.

Das wäre sí otra vez Zündstoff para el Foren:
- en lugar de: Welche Lenguaje de programación Es el beste....
- simplemente: Welche SpecialFolder-Rutina debería uno bevorzugen....

(Ist euch de paso ya veces aufgefallen: Diejenigen, el esta Cuestión stellen tauchen entonces en el folgenden 10.000 Postings no mehr en...

Saludo
Michael Wodrich
 
XProfan X2
Windows (TM) Vista Ultimate, Core(TM) i7 920 @ 2.67GHz, 9206,26 MB

Programmieren, das spannendste Detektivspiel der Welt.
28.02.2014  
 




Nico
Madysa
[OFFTOPIC]
Michael Wodrich (28.02.14)

(Ist euch de paso ya veces aufgefallen: Diejenigen, el esta Cuestión stellen tauchen entonces en el folgenden 10.000 Postings no mehr en...


Wahrscheinlich son el Personas, el simplemente sólo después de Streit búsqueda.
[/OFFTOPIC]
 
28.02.2014  
 



Zum Quelltext


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

10.190 Views

Untitledvor 0 min.
H.Brill22.02.2022
p.specht20.11.2021
Uwe Lang20.11.2021
Manfred Barei19.11.2021
Más...

Themeninformationen



Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie