RoboDeskbar-01

Anwendungen, Tools, Userlibs und anderes nützliches.
Benutzeravatar
roherter
Beiträge: 1407
Registriert: 10.04.2005 18:58
Kontaktdaten:

Beitrag von roherter »

Tooltips sind ab dem zweiten update dabei. :D
Purebasic 5.0 32bit und 64 bit

I'm back from hell
DarkDragon
Beiträge: 6291
Registriert: 29.08.2004 08:37
Computerausstattung: Hoffentlich bald keine mehr
Kontaktdaten:

Beitrag von DarkDragon »

roherter hat geschrieben:Nein so ist das eigentlich nicht sie wird da erstellt wo auch das Programm abgelegt wird.
Zumindest habe ich es so Programmiert.
Dann hat Alves das ArbeitsVerzeichnis(WorkingDirectory) falsch eingestellt bei einer Verknüpfung.
Angenommen es gäbe einen Algorithmus mit imaginärer Laufzeit O(i * n), dann gilt O((i * n)^2) = O(-1 * n^2) d.h. wenn man diesen Algorithmus verschachtelt ist er fertig, bevor er angefangen hat.
Benutzeravatar
PBZecke
Beiträge: 399
Registriert: 02.09.2004 17:34

Beitrag von PBZecke »

Andre hat geschrieben:
... PureBasic-Programme zeichnen sich u.a. dadurch aus, dass sie nicht irgendwohin speichern (wenn möglich, auch nicht in die Registry), sondern ihre Einstellungen im eigenen Programmverzeichnis ablegen. :wink:
Solch eine herangehensweise kann aber gefährlich werden. Das funktioniert
nämlich nur, wenn der Nutzer Deines Progrmmes Admin-Rechte hat.
Befindet sich Dein Programm beispielsweise im von Windows vorgegebenem
Verzeichnis "c:\programme\MeinPBÜberTool" und der Nutzer hat keine
Admin-Rechte, kann Dein PB-Programm keine Dateien in diesem Ordner
erstellen bzw. modifizieren!

Daher ist die von Microsoft vorgesehene Benutzung der Registry zum
Speichern von Einstellung zu empfehlen!
Nein, ich habe die Suche nicht benutzt, und deshalb auch nichts dazu gefunden... :lol:
Benutzeravatar
roherter
Beiträge: 1407
Registriert: 10.04.2005 18:58
Kontaktdaten:

Beitrag von roherter »

Jo ist ne Überlegungssache wenns komplet fertig ist werde ich vielleicht nochmal mit registry schreiben aber jetzt erstmal nicht.

Außerdem denke ich mal das die meisten Adminrechte haben ansonsten bau ich noch was ein was mir die rechte gibt.

Ps:Andere Programme in dieser Richtung arbeiten genauso. :)
Purebasic 5.0 32bit und 64 bit

I'm back from hell
Benutzeravatar
Alves
Beiträge: 1208
Registriert: 19.04.2006 18:24
Kontaktdaten:

Beitrag von Alves »

Also ich habs nochmal heruntergeladen, das erste Mal war es bei einem Freund, und da war es mit auf C:/. Aber bei mir ist es im Verzeichnis, wo die Deskbar abgelegt ist.
Benutzeravatar
roherter
Beiträge: 1407
Registriert: 10.04.2005 18:58
Kontaktdaten:

Beitrag von roherter »

Habe jetzt mal versucht es so umzusetzen das der hintergrund mit übernomen wird bei den icons oder wie man vielleicht sagt das der Icon hintergrund tranzparent ist wenn ihr ein bug findet oder es bei euch zu einem Programmfehler kommt bitte sagen.


http://leolasoft-herter.de/deskbar/deskbar_beta3.exe
Purebasic 5.0 32bit und 64 bit

I'm back from hell
Benutzeravatar
Andre
PureBasic Team
Beiträge: 1765
Registriert: 11.09.2004 16:35
Computerausstattung: MacBook Core2Duo mit MacOS 10.6.8
Lenovo Y50 i7 mit Windows 10
Wohnort: Saxony / Deutscheinsiedel
Kontaktdaten:

Beitrag von Andre »

PBZecke hat geschrieben: Solch eine herangehensweise kann aber gefährlich werden. Das funktioniert
nämlich nur, wenn der Nutzer Deines Progrmmes Admin-Rechte hat.
Befindet sich Dein Programm beispielsweise im von Windows vorgegebenem
Verzeichnis "c:\programme\MeinPBÜberTool" und der Nutzer hat keine
Admin-Rechte, kann Dein PB-Programm keine Dateien in diesem Ordner
erstellen bzw. modifizieren!

Daher ist die von Microsoft vorgesehene Benutzung der Registry zum
Speichern von Einstellung zu empfehlen!
Hm, das ist natürlich auch ein nicht zu unterschätzendes Argument.
Ändert zwar nichts grundsätzliches an meiner Einstellung zur Sache, sollte aber (bei größeren Projekten) mit bedacht werden.

(Bin - seit ich erstmals Windows angefasst habe - immer der Admin. :wink: )
Bye,
...André
(PureBasicTeam::Docs - PureArea.net | Bestellen:: PureBasic | PureVisionXP)
Benutzeravatar
roherter
Beiträge: 1407
Registriert: 10.04.2005 18:58
Kontaktdaten:

Beitrag von roherter »

Da das hier ein kleines Projekt ist werde ich hier abwägen ob ich das mit der registry einbaue.
Purebasic 5.0 32bit und 64 bit

I'm back from hell
Benutzeravatar
PBZecke
Beiträge: 399
Registriert: 02.09.2004 17:34

Beitrag von PBZecke »

@Andre: Ja, ich bin auch immer als Admin eingeloggt, und habe Programme
die alles in ihrem eigenen Ordner speichern lieber.

Aber ich bekam massive Probleme mit Anwendern einer meiner Software die
sie in Firmen einsetzen wollten, und Aufgrund dieses Problems das ich bis
dahin auch ignorierte, mein Programm nicht benutzen konnten. Daher eben
mein Hinweis.

@Roherter: Mein Programm war auch nur ein kleines Tool, das dann aber
sehr viele nutzen wollten, eben auch in Firmen, und da sind die Meisten eben
keine Addmins. :wink:
Nein, ich habe die Suche nicht benutzt, und deshalb auch nichts dazu gefunden... :lol:
Benutzeravatar
PureLust
Beiträge: 1145
Registriert: 21.07.2005 00:02
Computerausstattung: Hab aktuell im Grunde nur noch 'nen Lenovo Yoga 2 Pro im Einsatz.
Wohnort: am schönen Niederrhein

Beitrag von PureLust »

Hallo zusammen, ...

ich bin auch kein allzu großer Freund von etlichen Registry-Einträgen und lege meine Daten genau wie roherter lieber in eigenen Config-Dateien ab.

Zum Speichern meiner Config-Dateien verwende ich jedoch immer das Spezialverzeichnis 26 (oder auch 35), die meiner Meinung nach auch dafür vorgesehen sind.
Hierdurch vermeidet man Pfadprobleme (siehe Alves) und obendrein ermöglicht es separate Einstellungen für verschiedene User zu speichern.

26 - C:\Dokumente und Einstellungen\Administrator\Anwendungsdaten\
35 - C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\

Hier mal ein kleiner Beispielcode dazu:

Code: Alles auswählen

#CSIDL_APPDATA  = $1A         ; Anwendungsdaten - Userspezifisch        (Dezimal = 26)
#CSIDL_COMMON_APPDATA  = $23  ; Anwendungsdaten - Global für alle User  (Dezimal = 35)

#NOERROR  = 0 

Procedure.s GetSpecialeFolder(num.l) 
  *idl.ITEMIDLIST = #Null 
  If SHGetSpecialFolderLocation_ (0, num, @*idl) = #NOERROR 
    Buff.s = Space (#MAX_PATH) 
    If SHGetPathFromIDList_ (*idl, @Buff) 
      If Right(Buff, 1) <> "\" : Buff + "\" : EndIf 
      ProcedureReturn Buff 
    EndIf 
  EndIf 
EndProcedure 

Debug Str(#CSIDL_APPDATA)+" - "+GetSpecialeFolder(#CSIDL_APPDATA) 
Debug Str(#CSIDL_COMMON_APPDATA)+" - "+GetSpecialeFolder(#CSIDL_COMMON_APPDATA)
Grüße, PureLust.
[Dynamic-Dialogs] - komplexe dynamische GUIs einfach erstellen
[DeFlicker] - Fenster flimmerfrei resizen
[WinFX] - Window Effekte (inkl. 'durchklickbares' Window)
Antworten