windows - Ændring af systemikon i C #

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg laver en app til Windows skrevet i C#.
Jeg vil have, at appen skal ændre ikonet for papirkurv-ikonen/papirkurven.
Hvordan kan jeg opnå dette?

Bedste reference


Placeringen af ​​papirkurv-ikonet er defineret i Windows-registreringsdatabasen.


Denne side viser præcis hvor: http://www.winxptutor.com/rbicon.htm[6]


Jeg kopierer det her som spejl, bare i tilfælde af:



  Papirkurv-ikonet er defineret i to
  steder i registreringsdatabasen:

  
  HKEY\_CLASSES\_ROOT \

  CLSID \

  {645FF040-5081-101B-9F08-00AA002F954E} \

  DefaultIcon

  
  og

  
  HKEY\_CURRENT\_USER \

  Software \

  Microsoft \

  Windows \

  CurrentVersion \

  Explorer \

  CLSID \

  {645FF040-5081-101B-9F08-00AA002F954E} \

  DefaultIcon



Som standard peger værdierne på system DLL med standardikonet. (Forskellige i hver Windows-version)


Så alt hvad du behøver, overskriver de registrerede værdier for navne (Default), empty og full i de ovennævnte to placeringer til din egen DLL med dit eget ikon, og ikonet skal ændres.


Skrive til registrering med C# bør være enkelt, hvis du har brug for yderligere hjælp, så lad os vide.

Andre referencer 1


Dette link har nogle kode (det er ikke c #, men du kan 'transaltere' det), som vil omplacere et desktopikon. Du bør kunne ændre ikonet selv efter koden: http://www.swissdelphicenter.ch/torry/showcode.php?id=1897[7]

Andre referencer 2


Se også i regedit:


[[HKEY\_CLASSES\_ROOT \ CLSID {645FF040-5081-101B-9F08-00AA002F954E}]]