Kann man das Icon einer Batch-Datei ändern?

3 Antworten

Kann man nicht.

Wenn man Dir irgendetwas anderes vorgegaukelt hat, gehört das Zu den vielen Tricksereien, welche auf dem eigenen Rechner funktionieren, sich jedoch nicht ohne weiteres weitergeben lassen.

Ich verkneife es mir per Batch die netten kleinen Linkpfeile auf Deinem Rechner zu entfernen. (Darüber sollte jeder Nutzer selbst entscheiden.

Ebenso wie ich für meinen Rechner völlig individuelle Linkoverlayssymbole gebastelt habe.

Bild zum Beitrag

Bild zum Beitrag

...kann man diese auch komplett verschwinden lassen: https://www.wikihow.com/Remove-Shortcut-Arrows

Von der hier von einigen angesprochene "Batch to Exe"-Methode würde ich an Deiner Stelle Abstand nehmen. (Virenscanner sind von sowas richtig begeistert)

Statt dessen kann man die Batch, wie jedes andere Programm, außerhalb des Desktops platzieren , und automatisiert eine Desktopverknüpfung erzeugen:

@echo off
  rem  falls nötig javascript  erzeugen 
if not exist "%temp%\CreateShortCut.js"    echo args=WScript.Arguments;if (args.length^>3){ShCt=new ActiveXObject('WScript.Shell').CreateShortcut(args(0));ShCt.TargetPath=args(1);ShCt.IconLocation=args(2);ShCt.WorkingDirectory=args(3);ShCt.Description=args(4);ShCt.Save();} >"%temp%\CreateShortCut.js"
set "macroCreateShortCut=cscript /nologo "%temp%\CreateShortCut.js""
  rem Parameter: "Shortcut-Datei" "ZielProgramm für den SC" "Icondatei [optional: ,iconindex" "ArbeitsVerzeichnis" "Anmerkungen"
  rem Indexe  für Shell32.dll https://help4windows.com/windows_7_shell32_dll.shtm
  rem link  auf die gerade Diese Batch
%macroCreateShortCut% "%userprofile%\Desktop\%~n0.lnk" "%~f0" "%SystemRoot%\System32\shell32.dll,12" "" "Meine Batch"

  rem  noch ein test :
  rem erstelle andere Batch
echo @echo Hallo Welt^&pause >"%cd%\demo.cmd"
  rem erstelle Desktoplink auf die neue  Batch-Datei, benutze das Symbol von Cmd.exe Arbeitsverzeichniss
%macroCreateShortCut% "%userprofile%\Desktop\Demo Batch.lnk" "%cd%\demo.cmd" "cmd.exe" "%cd%" "Meine Batch"
pause
exit /b

...hier nochmal das verwendete kleine JavaScript in leserlicher Form:

args=WScript.Arguments;
 //sicherstellen das alle Argumente gesetzt  sind
if (args.length>3){
    ShCt=new ActiveXObject('WScript.Shell').CreateShortcut(args(0));
    ShCt.TargetPath=args(1);ShCt.IconLocation=args(2);
    ShCt.WorkingDirectory=args(3);
    ShCt.Description=args(4);
    ShCt.Save();
}

Das ist die ehrliche Art.... Wer sauber arbeitet hat keinen Grund für irgendwelche krummen Tricksereien.

Woher ich das weiß:eigene Erfahrung – Ich mach das seit 30 Jahren
 - (Computer, programmieren, cmd)  - (Computer, programmieren, cmd)
Erzesel  16.06.2020, 16:04

PS: mach Dir nicht die Mühe ein Programm zu finden, welches die bunten Pfeile setzt. Dies ist ein kleines persönliches Gimmick für meine Kunden ...

0

Moin,

Bat Dateien selbst haben ein fixes Icon. Du kannst also nur alle Icons von Bat Dateien maximal ändern.

Was du allerdings tun kannst, ist eine Verknüpfung zu erstellen und diesem ein Icon zu geben - klar, der Pfeil ist noch da, kannst ihn aber über Regedit entfernen:

https://www.windowscentral.com/how-get-rid-shortcut-arrows-windows-10

LG

Woher ich das weiß:Berufserfahrung – 💻 Zertifizierter Sr. Cloud Engineer im IT-Consulting
Simon18066 
Fragesteller
 16.06.2020, 12:15

Danke, aber bei mir sah das ganz anders aus, als auf der Website und da gab es ein paar Ordner nicht.

0

Bild zum Beitrag

Erstelle eine Verknüpfung und gib in den Einstellungen das Icon an, zB. ein .ico file oder eine ganze .dll wie

%SystemRoot%\System32\SHELL32.dll

Der .bat Datei intern kannst du kein Icon zuweisen wie in einer .exe.

Woher ich das weiß:eigene Erfahrung
 - (Computer, programmieren, cmd)
Simon18066 
Fragesteller
 16.06.2020, 12:13

Danke, aber ich will ja eben keine Verknüpfung haben, weil da ja dieser Pfeil dann da ist.

0
geri3d  16.06.2020, 12:18
@Simon18066

Lässt sich eben nur mit einer EXE machen check dir VS und da kannst du alles was die Bat macht auch tun und sie geht auch unter Win10. Nur Defender könnte motzen wenn du gewisse Aktionen in der Software tust wie ExKeyboardHook und so Keylogger kacke eben, das könnte erkannt werden auch das nachladen von Scripts aus dem Web und die starten.

0
Simon18066 
Fragesteller
 16.06.2020, 12:31
@geri3d

Ich kann aber VS auf meinem PC nicht finden.

0
geri3d  16.06.2020, 12:34
@Simon18066

Visual Studio wirst du auch nicht auf deinem PC finden. Es ist eine Entwicklungsumgebung von Microsoft mit der du mit nur drei Zeilen Code deine .bat ausführst und der Programmdatei ein wirklich eigenes Icon verpassen kannst. Das musst du Downloaden wenn dich Programmierung interessiert.

0