2013-04-25 41 views
8

enter image description hereLàm thế nào để thay đổi biểu tượng trong 'Add or Remove Programs'

Tôi đang cố gắng để thiết lập các biểu tượng trong Add or Remove Programs để giống như biểu tượng ứng dụng của tôi. Biểu tượng của tôi được lưu trữ trong Thư mục Ứng dụng của giải pháp của tôi. Tôi đọc trên SourceForge bạn phải chỉnh sửa thuộc tính ARPPRODUCTICON. Làm thế nào/nơi nào tôi làm điều này trong Windows Forms?

+1

Tôi đoán đó là công việc của trình cài đặt. –

+1

Vâng, đừng lưu trữ nó trong một thư mục, hãy nhúng nó vào EXE của bạn để bạn không phải làm bất cứ điều gì đặc biệt. –

+1

Bản sao có thể có của * [Biểu tượng tùy chỉnh cho ứng dụng ClickOnce trong 'Thêm hoặc Xóa Chương trình'] (http://stackoverflow.com/questions/10927109/custom-icon-for-clickonce-application-in-add-or-remove- chương trình) *. –

Trả lời

15

Tôi đã tìm thấy một giải pháp cực kỳ đơn giản. Trong thuộc tính của dự án triển khai của bạn, hãy nhấp vào "AddRemoveProgram" và duyệt tìm tệp của bạn. Tôi khuyên bạn nên thả biểu tượng của ứng dụng vào thư mục Ứng dụng của bạn.

enter image description here

+0

Bạn có ý nghĩa gì bởi "thuộc tính của dự án triển khai"? Tôi nhìn khắp nơi cho những tài sản đó, nhưng không thể tìm thấy nó. Chúc các bạn không kiểm duyệt được chút đỉnh ... –

6

Bạn có thể tự thay đổi các chi tiết dưới

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall

Một số các giá trị hợp lệ được chấp nhận chìa khóa:

  • InstallLocation (string) - thư mục cài đặt ($ INSTDIR)
  • DisplayIcon (chuỗi) - Đường dẫn, tên tệp và chỉ mục của biểu tượng sẽ được hiển thị bên cạnh tên ứng dụng của bạn
  • Publisher (string) - (Công ty) tên của nhà xuất bản
  • ModifyPath (string) - Đường dẫn và tên tập tin của ứng dụng sửa đổi chương trình
  • InstallSource (string) - Vị trí nơi ứng dụng đã được cài đặt từ
  • ProductID (string) - Sản phẩm ID của ứng dụng
  • Readme (string) - Đường dẫn (tệp or URL) để readme thông tin
  • RegOwner (string) - chủ sở hữu đăng ký của các ứng dụng
  • RegCompany (string) - đăng ký công ty ứng dụng
  • HELPLINK (string) - Liên kết với các trang web hỗ trợ
  • HelpTelephone (string) - Số điện thoại hỗ trợ
  • URLUpdateInfo (string) - Liên kết với các trang web để cập nhật ứng dụng
  • URLInfoAbout (string) - Liên kết đến trang ứng dụng nhà
  • DisplayVersion (string) - phiên bản hiển thị của ứng dụng
  • VersionMajor (DWORD) - số phiên bản chính của ứng dụng
  • VersionMinor (DWORD) - Tiểu số phiên bản của ứng dụng
  • NoModify (DWORD) - 1 nếu chương trình cài đặt không có tùy chọn để chỉnh sửa các ứng dụng được cài đặt
  • NoRepair (DWORD) - 1 nếu chương trình cài đặt không có tùy chọn để sửa chữa cài đặt
  • SystemComponent (DWORD) - Đặt 1 tới ngăn chặn hiển thị ứng dụng trong Danh sách Chương trình của Thêm/Loại bỏ Chương trình trong Pa-nen Điều khiển.
  • EstimatedSize (DWORD) - Kích thước của các tập tin cài đặt (trong KB)
  • Comments (string) - Một lời chú thích mô tả các gói cài đặt

Nếu cả hai NoModify và NoRepair được thiết lập để 1, nút hiển thị "Xóa" thay vì "Sửa đổi/Xóa".

Ví dụ:

Windows Registry Editor Version 5.00 

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\WinRAR archiver] 
"DisplayName"="WinRAR 4.20 (64-bit)" 
"DisplayVersion"="4.20.0" 
"VersionMajor"=dword:00000004 
"VersionMinor"=dword:00000014 
"UninstallString"="C:\\Program Files\\WinRAR\\uninstall.exe" 
"DisplayIcon"="C:\\Program Files\\WinRAR\\WinRAR.exe" 
"InstallLocation"="C:\\Program Files\\WinRAR\\" 
"NoModify"=dword:00000001 
"NoRepair"=dword:00000001 
"Language"=dword:00000000 
"Publisher"="win.rar GmbH" 

Bạn có thể thay đổi (hoặc tạo ra nó nếu nó không tồn tại) giá trị của khóa DisplayIcon. Điều này sẽ thay đổi biểu tượng trình gỡ cài đặt trong Thêm hoặc Xóa Chương trình trong bảng điều khiển.

1

Vâng, bạn có thể làm điều đó bằng cách mã này:

string Install_Reg_Loc = @"Software\Microsoft\Windows\CurrentVersion\Uninstall"; 
string displayIcon = @"C:\MorganTech\setup-icon.ico"; 
RegistryKey hKey = (Registry.LocalMachine).OpenSubKey(Install_Reg_Loc, true); 
RegistryKey appKey = hKey.OpenSubKey(productName); 
appKey.SetValue("DisplayIcon", (object)displayicon, RegistryValueKind.String) 
1

cài đặt Windows hỗ trợ tài sản mà bạn có thể thêm biểu tượng ARPPRODUCTICON. Để đặt thuộc tính này, chúng tôi cần thêm biểu tượng trong trình cài đặt của bạn bằng phần tử Icon.

<Icon Id="icon.ico" SourceFile="MySourceFiles\icon.ico"/> 
<Property Id="ARPPRODUCTICON" Value="icon.ico" /> 

Điều này sẽ thêm biểu tượng trong Pa-nen điều khiển.

1

Các gì theo cách dễ dàng trên đầu khởi động chạy mã này (vb .net):

Dim myUninstallKey As RegistryKey = Registry.CurrentUser.OpenSubKey("Software\Microsoft\Windows\CurrentVersion\Uninstall") 
dim iconSourcePath As String = "c:\myprogram\myprogram.exe,0" 
Dim mySubKeyNames As String() = myUninstallKey.GetSubKeyNames() 
For i As Integer = 0 To mySubKeyNames.Length - 1 
    Dim myKey As RegistryKey = myUninstallKey.OpenSubKey(mySubKeyNames(i), True) 
    Dim myValue As Object = myKey.GetValue("DisplayName") 
    If myValue IsNot Nothing AndAlso myValue.ToString() = "YourProgaram" Then 
     myKey.SetValue("DisplayIcon", iconSourcePath) 
     Exit For 
    End If 
Next 

hoặc C#

RegistryKey myUninstallKey = Registry.CurrentUser.OpenSubKey("Software\Microsoft\Windows\CurrentVersion\Uninstall"); 
string iconSourcePath = "c:\myprogram\myprogram.exe,0"; 
string[] mySubKeyNames = myUninstallKey.GetSubKeyNames(); 
for (int i = 0; i <= mySubKeyNames.Length - 1; i++) { 
    RegistryKey myKey = myUninstallKey.OpenSubKey(mySubKeyNames(i), true); 
    object myValue = myKey.GetValue("DisplayName"); 
    if (myValue != null && myValue.ToString() == "YourProgaram") { 
     myKey.SetValue("DisplayIcon", iconSourcePath); 
     break; // TODO: might not be correct. Was : Exit For 
    } 
} 
Các vấn đề liên quan