Français
Forum

comment den Pfad trop "Eigene Dateien" feststellen?

 

Torsten
Rümker
Salut,
je versuche justement herauszubekommen, comment on den Pfad de Eigene Fichiers herausbekommen peux.
Pour Verschiedene autre Verzeichnisse (Windowsverzeichnis, Programmverzeichnis) peux on cela oui aus einer Système erfahren, mais comment erfahre je cela Verzeichnis pour Eigene Fichiers pour den aktuellen Benutzer?

MfG
Torsten
 
Ich lerne, ob ich will oder nicht!
Betriebssystem:
- Ubuntu 15.x
- Windows (diverse)
XProfan Version: X2
23.05.2006  
 




Frank
Abbing
Einer en isses:
KompilierenMarqueSéparation
Systemordner im Dateisystem mit SHGetSpecialFolderLocation ermitteln
Benötigt Profan 6.6 (wg. Konstanten);
bei Verzicht auf Konstanten auf jeden Fall 6.1 wegen Addr-Funktion
Achtung: Der gewünschte Ordner muß(!) auch im Dateisystem vorliegen
(Systemsteuerung klappt daher z.B. nicht)
Im Fehlerfall ist der Return-String leer
Ich hoffe(!), daß CoTaskMemFree in diesem Fall den vom System
reservierten Speicher freigibt.
Eigentlich müßte dies über die Free-Methode des IMalloc-Interface
erfolgen, aber das geht mit Profan leider nicht.
ole32.hlp läßt die Hoffnung nicht unbegründet erscheinen, aber sicher
bin ich nicht.
Def %CSIDL_DESKTOP 0
Def %CSIDL_PROGRAMS 2
Def %CSIDL_CONTROLS 3
Def %CSIDL_PRINTERS 4
Def %CSIDL_PERSONAL 5
Def %CSIDL_FAVORITES 6
Def %CSIDL_STARTUP 7
Def %CSIDL_RECENT 8
Def %CSIDL_SENDTO 9
Def %CSIDL_BITBUCKET 10
Def %CSIDL_STARTMENU 11
Def %CSIDL_DESKTOPDIRECTORY 16
Def %CSIDL_DRIVES 17
Def %CSIDL_NETWORK 18
Def %CSIDL_NETHOOD 19
Def %CSIDL_FONTS 20
Def %CSIDL_TEMPLATES 21
Def %CSIDL_COMMON_STARTMENU 22
Def %CSIDL_COMMON_PROGRAMS 23
Def %CSIDL_COMMON_STARTUP 24
Def %CSIDL_COMMON_DESKTOPDIRECTORY 25
Def %CSIDL_APPDATA 26
Def %CSIDL_PRINTHOOD 27
Def StartMenueAutostart(0) Readini$("Hkey_1","SoftwareMicrosoftWindowsCurrentVersionExplorerShell Folders","Startup")
Def SHGetSpecialFolderLocation(3) !"SHELL32","SHGetSpecialFolderLocation"
Def SHGetPathFromIDList(2) !"SHELL32","SHGetPathFromIDListA"
Def CoTaskMemFree(1) !"OLE32","CoTaskMemFree"
Declare buffer#

Proc GetSpecialFolder

    Parameters csidl%
    Declare lpidl&,result$
    Dim buffer#,255

    If SHGetSpecialFolderLocation(GetActiveWindow(),CSIDL%,Addr(lpidl&))=0

        Print lpidl&

        IfNot SHGetPathFromIDList(lpidl&,buffer#)=0

            Let result$=String$(buffer#,0)

        EndIf

    EndIf

    CoTaskMemFree(lpidl&)
    Dispose buffer#
    Return result$

EndProc

Beispiel
Window 0,0-%maxx,%maxy
Print $TempDir
Print
Print StartMenueAutostart()
Print
GetSpecialFolder %CSIDL_STARTUP

Whileloop 50

    GetSpecialFolder &loop-1

    If &loop>9

        Print Str$(Int(&loop-1));"",$(0)

    Else

        Print Str$(Int(&loop-1));" ",$(0)

    EndIf

a> WaitInput
 
23.05.2006  
 



qui 5 ist Eigenen Fichiers!
voudrais nochmal sur elle aufmerksam faire, cela qui Ergebnisse stark de qui installiertem InternetExplorer Version dépendre. si alors alternative API vorhanden ist, ist cet trop bevorzugen.

Eigene Fichiers funktioniert mais toujours, si qui Internet Explorer installiert ist, pour autre Pfade lieber qui MSDN étudier.
 
23.05.2006  
 




Frank
Abbing
Nenne la fois s'il te plaît alternative APIs...

je bezweifle, dass qui API pas richtig funktioniert, si qui IE pas installiert ist. cela peux au maximum chez Windows 95 qui le cas son, weil ici quelques Dlls fehlten, si qui IE pas vorhanden ist. et la fois honnête - Windows 95 ist Schnee de gestern...
 
23.05.2006  
 



[...] 

là stehen größtenteils qui erforderlichen Win et IE Versionen chez.

z.B CSIDL_PROGRAM_FILES (Crogramme meist sur dt. Systemen) existiert seulement ab IE 5.
 
23.05.2006  
 



[quote-part:a23301beb1=TS-Soft] [...] 

là stehen größtenteils qui erforderlichen Win et IE Versionen chez.[/quote-part:a23301beb1]
Wobei mir la fois wieder auffällt cela MSDN avec FF betrachtet simple furchtbar aussieht.
 
23.05.2006  
 



ici ne Alternative pour CSIDL_PROGRAM_FILES
KompilierenMarqueSéparation
cls
declare ProgramFiles$
ProgramFiles$ = ReadIni$("HKEY_2", "SOFTWAREMicrosoftWindowsCurrentVersion", "ProgramFilesDir")
print ProgramFiles$
waitkey
/pre>

Funktioniert ensuite aussi sans IE5, genauso pour Temp, System usw. lieber qui entsprechende API verwenden, anstatt cette AllroundFunktion, bzw. si, ensuite plan avec obigen Link vergewissern
 
23.05.2006  
 




Torsten
Rümker
Alors,
j'ai maintenant la fois dans qui Registry gestöbert et une Eintrag trouvé, qui mir eventuell aider peux.
et zwar:
HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrent VersionExplorerShellFolders
et ici ensuite qui Eintrag personnel

peux cela s'il te plaît quelqu'un bestätigen, bzw. arrêt aussi pas?
Möglichst pas seulement WinXP nutzer wäre joli

MfG
Torsten
 
Ich lerne, ob ich will oder nicht!
Betriebssystem:
- Ubuntu 15.x
- Windows (diverse)
XProfan Version: X2
24.05.2006  
 



Pour Eigene Fichiers (CSIDL_PERSONAL = 5) kannste den Code de Frank verwenden, funzt ab Win95 avec IE 3.0 (peut-être. sogar sans?). là gibts aucun Probleme

mais chez manchen cette Constanten sollte on très prudent son, bzw. gibts une Leerstring si es encore pas existiert.

malheureusement croyons viele, cet Constanten sur jeden System nutzen trop peut, c'est pourquoi toujours informer, bevor on es utilise.
 
24.05.2006  
 



répondre


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

1.933 Views

Untitledvor 0 min.
Untitled30.03.2012

Themeninformationen



Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie