Delphi-PRAXiS
Seite 24 von 32   « Erste     14222324 2526     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   Ordnung muss sein (LaunchBar) (https://www.delphipraxis.net/192767-ordnung-muss-sein-launchbar.html)

EWeiss 16. Aug 2018 03:04

AW: Ordnung muss sein (LaunchBar)
 
Zitat:

Ich habe Post #1 geladen, wollte nun das Cleanup Config file ausprobieren, da ist anscheinend der gleiche Fix nötig wie beim Bitmap Dialog.
Werde ich mir morgen.. Nachher anschauen.
Muss eh noch einiges ändern das mit dem Icon (Set OnTop) gefällt mir nicht das es immer sichtbar ist.

Probleme behoben siehe Upload post 1#

Zitat:

Bei einem hat OTTB Probleme, habe den betreffenden Desktop ShortCut über OTTB geparkt und die Dateieigenschaften samt Symbol-Fenster offen.
Die Pfade existieren.

Kannst Du Dir darauf einen Reim machen?
Ja kann ich..
Weil einige *.lnk Dateien auf den Ordner
'C:\Windows\Installer\' verzweigen.
Warum das so ist und wie ich das beheben kann habe ich noch nicht herausgefunden.

bsp. In der Verknüpfung steht
Ziel: "C:\Program Files (x86)\IDM Computer Solutions\UltraEdit\Uedit32.exe"
Ausführen in "C:\Program Files (x86)\IDM Computer Solutions\UltraEdit\"

Der Target Path ist aber
'C:\Windows\Installer\{DDF17E28-E4C4-41CF-9DB9-8FA5F19B918C}\IconD7A33067.exe'

Das Resultat ist dann das ich ein falsches bzw.. das Installer Icon geliefert bekomme.
Wie gesagt ich weis nicht warum Windows das macht und wie ich das verhindern kann.

Hier ist das Problem beschrieben

Der beste weg eine Verknüpfung zu erstellen ist dieser.
Geht zum Ordner wo sich die Exe befindet klick mit der rechten Maustaste drauf und verwende im Menu Senden an Desktop (Verknüpfung)

gruss

jaenicke 16. Aug 2018 05:34

AW: Ordnung muss sein (LaunchBar)
 
Zitat:

Zitat von KodeZwerg (Beitrag 1410772)
Falls ich dennoch einmal meinen Wunsch wiederholen darf, mit OnTop, da wünsche ich mir ne mini-Checkbox mittig/unten im OTTB für Quick On/Off OnTop, ohne Menu/Config/Umwege, direkt als Quicky sofort Erreichbar.

Wäre da nicht ein globaler Shortcut sinnvoller, der die Leiste schlicht nach oben holt?

EWeiss 16. Aug 2018 05:39

AW: Ordnung muss sein (LaunchBar)
 
Zitat:

Zitat von jaenicke (Beitrag 1410834)
Zitat:

Zitat von KodeZwerg (Beitrag 1410772)
Falls ich dennoch einmal meinen Wunsch wiederholen darf, mit OnTop, da wünsche ich mir ne mini-Checkbox mittig/unten im OTTB für Quick On/Off OnTop, ohne Menu/Config/Umwege, direkt als Quicky sofort Erreichbar.

Wäre da nicht ein globaler Shortcut sinnvoller, der die Leiste schlicht nach oben holt?

Theoretisch.. bzw. Wäre eine Alternative.
Aber ich habe es schon fertig ;)

Und das Bitmap ist nur sichtbar wenn man mit der Maus über die Leiste fährt.

gruss

jaenicke 16. Aug 2018 05:44

AW: Ordnung muss sein (LaunchBar)
 
Zitat:

Zitat von EWeiss (Beitrag 1410833)
Wie gesagt ich weis nicht warum Windows das macht und wie ich das verhindern kann.

Das wird doch unter deinem eigenen Link sehr gut beschrieben. ;-)
Zitat:

Advertised shortcuts allow installer authors to install only portions of their application and then install additional pieces when they are accessed via the advertised shortcut. Windows Installer also automatically checks the integrity of all of the installed files each time the application is run so you can be sure the application is valid when it is run.
Entscheidend ist daher, dass diese Anwendungen auch genau so ausgeführt werden und nicht über einen anderen Weg wie einem neuen Shortcut auf die Exe direkt.

Ich hatte aber auch noch nie ein Problem damit diese Links per ShellExecute auszuführen oder mit SHGetFileInfo ein Handle zu dem richtigen Icon zu bekommen (z.B. bei Word und Excel).

// EDIT:
Beispiel:
Delphi-Quellcode:
var
  ShFileInfo: TSHFileInfo;
begin
  SHGetFileInfo('C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Microsoft Office\Microsoft Excel 2010.lnk', 0, ShFileInfo, SizeOf(TSHFILEINFO), SHGFI_ICON);
  Image1.Picture.Icon.Handle := ShFileInfo.hIcon;
end;

EWeiss 16. Aug 2018 05:45

AW: Ordnung muss sein (LaunchBar)
 
Zitat:

oder mit SHGetFileInfo ein Handle zu dem richtigen Icon zu bekommen.
Ich bekomme aber das vom Installer warum auch immer. ;)
Selber habe ich keinen Einfluss darauf wie Anwendungen ihre ShortCuts bzw.. Links erstellen.
Siehe Anhang als Beispiel.

Von der Anwendung bekomme ich das Icon vom Installer zurück geliefert.
Delphi-Quellcode:
procedure TWin32ShortCut.LoadShortCut(LnkName: WideString);
var
  FP: array[0..MAX_PATH * 2] of Char;
  pfd: TWin32FindDataW;
  showval: integer;
  psfi: TSHFileInfo;
begin
  ClearValues;
  FPersistFile.Load(PWideChar(LnkName), 0);

  FillChar(FP, Sizeof(FP), 0);
  FShellLink.GetPath(FP, Sizeof(FP), pfd, 0);
  FAppPath := String(FP);

  FShellLink.GetIDList(Fpidl);

  FillChar(FP, Sizeof(FP), 0);
  FShellLink.GetWorkingDirectory(FP, Sizeof(FP));
  FWorkDirectory := String(FP);

  FillChar(FP, Sizeof(FP), 0);
  FShellLink.GetArguments(FP, Sizeof(FP));
  FArguments := String(FP);

  FillChar(FP, Sizeof(FP), 0);
  FShellLink.GetDescription(FP, Sizeof(FP));
  FDescription := String(FP);

  FShellLink.GetShowCmd(showval);
  FShowCmd := cvtTShowType(showval);

  FShellLink.GetHotkey(FHotKey);
  HotKeyToShortCut(FHotKey, FHotKeyCtrl);


  FillChar(FP, Sizeof(FP), 0);
  FShellLink.GetIconLocation(FP, Sizeof(FP), FIconIndex); // <<<<< und zwar hier FP
  FIconPath := String(FP);

  if FIconPath = '' then
    begin
      SHGetFileInfo(PChar(FAppPath), 0, psfi, sizeof(psfi), SHGFI_ICON);
      FIcon.Handle := psfi.hIcon;
    end
  else
    FIcon.Handle := ExtractIcon(hInstance, PChar(FIconPath), FIconIndex);
end;
Zitat:

Ich hatte aber auch noch nie ein Problem damit diese Links per ShellExecute auszuführen
Es geht nicht um die Ausführung da habe ich auch kein Problem sondern um das auffinden des richtigen Pfades incl. des Icon.

gruss

jaenicke 16. Aug 2018 05:58

AW: Ordnung muss sein (LaunchBar)
 
Ich würde gar nicht erst GetIconLocation + ExtractIcon benutzen. SHGetFileInfo funktioniert (zumindest in allen Fällen, in denen ich es bisher genutzt und getestet habe) immer, egal was das für ein Shortcut oder was für eine andere Datei ist.

EWeiss 16. Aug 2018 05:59

AW: Ordnung muss sein (LaunchBar)
 
Zitat:

Zitat von jaenicke (Beitrag 1410839)
Ich würde gar nicht erst GetIconLocation + ExtractIcon benutzen. SHGetFileInfo funktioniert (zumindest in allen Fällen, in denen ich es bisher genutzt und getestet habe) immer, egal was das für ein Shortcut oder was für eine andere Datei ist.

Du meinst als nur deine Methode?
Delphi-Quellcode:
SHGetFileInfo('C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Microsoft Office\Microsoft Excel 2010.lnk', 0, ShFileInfo, SizeOf(TSHFILEINFO), SHGFI_ICON);


Hmmm.. muss ich mal testen.

EDIT:
Nein Funktioniert nicht. Siehe Pic!
Immer der Installer Pfad.

Auch wenn ich den LinkName direkt angebe
Delphi-Quellcode:
SHGetFileInfo(PChar(LnkName), 0, psfi, sizeof(psfi), SHGFI_ICON);


Bekomme ich das Installer Icon.

gruss

jaenicke 16. Aug 2018 07:47

AW: Ordnung muss sein (LaunchBar)
 
Zitat:

Zitat von EWeiss (Beitrag 1410840)
Auch wenn ich den LinkName direkt angebe
Delphi-Quellcode:
SHGetFileInfo(PChar(LnkName), 0, psfi, sizeof(psfi), SHGFI_ICON);
Bekomme ich das Installer Icon.

Komisch. Damit liest der Windows Explorer das Icon aber selbst aus (und zeigt es ja vermutlich richtig an).
Egal bei welcher .lnk Datei ich das teste, es klappt, wenn ich die direkt dort angebe.

KodeZwerg 16. Aug 2018 08:33

AW: Ordnung muss sein (LaunchBar)
 
Vielen Dank und Guten Morgen Emil,

ich wollte Dich nur rasch Wissen lassen das die "Cleanup" Fenster nun allesamt bei mir ihr Werk ohne Probleme verrichten!:thumb:

edit
Zitat:

Zitat von jaenicke (Beitrag 1410834)
Zitat:

Zitat von KodeZwerg (Beitrag 1410772)
Falls ich dennoch einmal meinen Wunsch wiederholen darf, mit OnTop, da wünsche ich mir ne mini-Checkbox mittig/unten im OTTB für Quick On/Off OnTop, ohne Menu/Config/Umwege, direkt als Quicky sofort Erreichbar.

Wäre da nicht ein globaler Shortcut sinnvoller, der die Leiste schlicht nach oben holt?

Für mich, der oft Tastatur weg lässt, ist die Lösung von Emil perfekt umgesetzt.
Ein TaskBar Icon könnte ich mir noch als Alternative vorstellen.

Sherlock 16. Aug 2018 10:49

AW: Ordnung muss sein (LaunchBar)
 
Windows 10 Pro (Version 1803 [Build 17134.228]

Hab OTTB.zip in meinem Download Ordner entpackt und von dort aus ausgeführt. Funktioniert ohne Fehlermeldung und sieht gefällig aus.
Ich brauche es allerdings nicht und habs wieder geschlossen und gelöscht.

Schöne Arbeit aber!

Sherlock


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:23 Uhr.
Seite 24 von 32   « Erste     14222324 2526     Letzte »    

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz