| |
|
|
- Página 1 - |
|
Julian Schmidt | ¡Hola, würd gerne por XProfan el Icon de una Directorio ändern. Bin desafortunadamente todavía no en el Shell32.dll fündig geworden. Und bräuchte Ayuda en Umsetzung.
Saludo |
|
|
| |
|
|
| |
|
- Página 2 - |
|
|
Julian Schmidt | Ok, el scheint a trabajo.
Aunque scheint Windows trotzdem mi Desktop.ini no anzunehmen.
Schau veces. [...] Kommen como en dir el Ordner-Icons después de el Ausführen. |
|
|
| |
|
|
|
| Richtig, aktualisiert auch en me (XP) no.
Posesiones veces RegDump gemacht antes y después de Änderung -
scheint en el Reg se dadurch nichts a ändern.
Aber schau mal hier es qué: [...] [...] |
|
|
| |
|
|
|
Julian Schmidt | Klappt immernoch no correcto. KompilierenMarcaSeparaciónDef PathMakeSystemFolder(1) !"Shlwapi", "PathMakeSystemFolderA"
Def DateiName(1) SubStr$(@$(1),-1,"\\")
Def DateiEndung(1) SubStr$(@$(1),-1,".")
Def DateiPfad(1) Translate$(@$(1),("\\" + DateiName(@$(1))),"")+"\\"
Var Programm$=Par$((Upper$(DateiName(Par$(0)))="PROFAN.EXE") or (Upper$(DateiName(Par$(0)))="XPROFAN.EXE"))
Declare Folder$, Icon$, DesktopIni$
Var l&=Create("List", 0)
ClearList
ChDir DateiPfad(Programm$)
AddFiles *"*.ICO"
MoveListToHandle(l&)
whileloop 1, Getcount(l&)
Icon$=GetString$(l&,&loop-1)
Folder$=DateiPfad(DateiPfad(Programm$)+Trim$(Mid$(Icon$,Len(DateiPfad(Programm$)+"\\Icons\\"),9999)))
DesktopIni$ = Folder$ + "Desktop.ini"
Ifnot DirExists(Folder$)
MkDir Folder$
EndIf
If DirExists(Folder$)
PathMakeSystemFolder(Folder$)
If FileExists(DesktopIni$)
Erase DesktopIni$
EndIf
WriteIni DesktopIni$,".ShellClassInfo","IconResource"=Icon$+", 0"
WriteIni DesktopIni$,"ViewState","Mode"=""
WriteIni DesktopIni$,"ViewState","Vid"=""
WriteIni DesktopIni$,"ViewState","FolderType"="Generic"
SetFAttr DesktopIni$, $06
EndIf
EndWhile
|
|
|
| |
|
|
|
| Schau veces el APIs liefern en me 0, De todos modos el Returnwert de Apis beachten.
MS schreibt: Returns nonzero if successful, or zero otherwise.
Cuerdas son desafortunadamente auch no es igual Cuerdas. Besonders Roland seine Cuerdas oder más por el Art y Weise como ellos verwaltet, son no siempre para Übergaben a APIs brauchbar z.B. si la GC ( [...] ) a früh zuschlägt como no incluso organisiert.
Como helfen nProc-Cuerdas oder más el APIs en nProcs rufen, como nProcs una echte propio Stringverwaltung inne haben y nativ Cuerdas erzeugen bastante reine y feine como M$ ellos wünscht. KompilierenMarcaSeparación {$cleq}
{$compiler c:\dev\xprofan11\11}
{$runtime c:\dev\xprofan11\11}
Def GetFileAttr(1) !"Kernel32", "GetFileAttributesA"
Def DateiName(1) SubStr$(@$(1),-1,"\\")
Def DateiEndung(1) SubStr$(@$(1),-1,".")
Def DateiPfad(1) Translate$(@$(1),("\\" + DateiName(@$(1))),"")+"\\"
Var Programm$=Par$((Upper$(DateiName(Par$(0)))="PROFAN.EXE") or (Upper$(DateiName(Par$(0)))="XPROFAN.EXE"))
Declare Folder$, Icon$, DesktopIni$
Var l&=Create("List", 0)
ClearList
ChDir DateiPfad(Programm$)
AddFiles *"*.ICO"
MoveListToHandle(l&)
whileloop 1, Getcount(l&)
Icon$=GetString$(l&,&loop-1)
Folder$=DateiPfad(DateiPfad(Programm$)+Trim$(Mid$(Icon$,Len(DateiPfad(Programm$)+"\\Icons\\"),9999)))
DesktopIni$ = Folder$ + "Desktop.ini"
Ifnot DirExists(Folder$)
MkDir Folder$
EndIf
If DirExists(Folder$)
print folder$
print "A:";nSetFileAttr(Folder$, $4)
If FileExists(DesktopIni$)
Erase DesktopIni$
EndIf
assign #1,DesktopIni$
rewrite #1
/*
WriteIni DesktopIni$,".ShellClassInfo","IconResource"=Icon$+", 0"
WriteIni DesktopIni$,"ViewState","Mode"=""
WriteIni DesktopIni$,"ViewState","Vid"=""
WriteIni DesktopIni$,"ViewState","FolderType"="Generic"
*/
print #1,"[.ShellClassInfo]"
print #1,"IconFile=%SystemRoot%\\system32\\SHELL32.dll"
print #1,"IconIndex=15"
print #1,"[ViewState]"
print #1,"FolderType=Generic"
close #1
nSetFileAttr(DesktopIni$, $06)
nSetFileAttr(Folder$, $4)
EndIf
EndWhile
waitinput
nProc nSetFileAttr(string s,long m){
return SetFileAttributesA(s, | 25.05.2013 ▲ | |
|
|
|
|
Julian Schmidt | Cool, klappt. Naja zumindest si la Ordner leer es. Wenn él gefüllt es es no. Ist el de Microschrott no vorgesehen oder bekommt al auch todavía irgendwie hin? |
|
|
| |
|
|
|
| Yo weiß lo ehrlich dijo no y fürchte, como hilft sólo Probieren. |
|
|
| |
|
|
|
Julian Schmidt | Yo denke el va no. Wurde auch hier geschrieben. [...] Sombrero alguien una bessere Concepto como una Neuen Ordner a redactar hay el Desktop.ini abzulegen, Rechte a conjunto y anschließend todos Archivos y Unterordner en el neuen Ordner a mover. |
|
|
| |
|
|
|
| Sí, Yo! No kopieren pero mover!
Spätestens si se una Expediente no mover lässt ists aber auch otra vez unlustig. Ergo todo Desktop.ini-Gedöns sólo para neue Ordner el uno z.B. incluso erstellt. |
|
|
| |
|
|
|
| Sí, Yo! No kopieren pero mover!
Spätestens si se una Expediente no mover lässt ists aber auch otra vez unlustig. Ergo todo Desktop.ini-Gedöns sólo para neue Ordner el uno z.B. incluso erstellt.
Gehen debería lo aber todavía siempre irgendwie porque el Explorer tät sí así! |
|
|
| |
|
|
|
Julian Schmidt | IF (25.05.13)
Gehen debería lo aber todavía siempre irgendwie porque el Explorer tät sí así!
Jup, sólo como findet uno fuera como el Explorer el macht?
[OFFTOPIC]Doppelpost ^ ^[/OFFTOPIC] |
|
|
| |
|
|
|
| Könnte uno API-Mon ansetzen aber el wir específicamente beim Explorer tal vez tendentiell gewissermassen para Horror. |
|
|
| |
|
|
|
Julian Schmidt | Real schade. Hab wirklich gehofft el al irgendwie hinbekommt.
Übrings. Mit esta Registry-Hack[...] puede ser en lugar de Readonly auch Sistema a Kennzeichnung de Individualisierten Ordnern uso. Evtl. no con Win7 kompatible. |
|
|
| |
|
|