เปลี่ยนไอคอนของไฟล์ปฏิบัติการขึ้นอยู่กับการกําหนดค่าบิลด์ที่เลือก

ปรับปรุงหน้า :
วันที่สร้างเพจ :

สิ่งแวดล้อม

โครงร่าง
  • ฟอร์มของ Windows (กรอบงาน NET) โดยทั่วไป
  • แบบฟอร์มวินโดวส์ (.NET) ทั่วไป
  • WPF (กรอบงาน.NET) โดยทั่วไป
  • WPF (.NET) โดยทั่วไป

ทีแรก

โดยปกติสามารถตั้งค่าไอคอนเดียวเท่านั้นในโครงการ EXE ส่วนนี้อธิบายวิธีการสลับไอคอนสําหรับไฟล์ EXE ที่สร้างโดยการกําหนดค่าบิลด์ที่เลือก

โปรแกรมที่เรากําลังยกขึ้นเป็นขั้นตอนเริ่มต้นด้วยโปรแกรมที่มีโครงการที่สร้างขึ้นใหม่ นอกจากนี้ยังเป็นไปได้ที่จะตั้งค่าสําหรับโครงการที่คุณสร้างไว้แล้ว

ที่นี่ไอคอนถูกตั้งค่าให้เปลี่ยนแปลงขึ้นอยู่กับการสร้าง "Debug" และ "Release" ที่กําหนดค่าไว้ในสถานะเริ่มต้น นอกจากนี้ ตามที่อธิบายไว้ในโครงการ Windows Forms (.NET) เป็นตัวอย่าง กระบวนงานจะเหมือนกันสําหรับเฟรมเวิร์กอื่น ๆ ที่แสดงอยู่ที่จุดเริ่มต้น

การเตรียมไฟล์ไอคอน

คราวนี้เราได้เตรียมไอคอนเช่นรูปเป็นข้อมูลอ้างอิง

การตั้งค่าไฟล์ไอคอน

ลงทะเบียน Visual Studio เพื่อให้สามารถนําไอคอนไปใช้กับแฟ้ม EXE ได้ตามปกติ

สําหรับ .NET (แกนหลัก)

ไฟล์ไอคอนแรกจะถูกเพิ่มลงในโครงการ

ทําตามขั้นตอนเดียวกันเพื่อเลือกไอคอนที่สอง

ไฟล์ไอคอนที่สองจะถูกเพิ่มลงในโครงการ

การตั้งค่าของไอคอนแรกจะถูกเขียนทับ แต่โปรดละเว้นเนื่องจากการตั้งค่าบนตัวแก้ไขไม่เกี่ยวข้องในครั้งนี้ สิ่งสําคัญคือต้องมีไอคอนสองไอคอนที่ลงทะเบียนไว้ในโครงการ

สําหรับกรอบงาน .NET

ไฟล์ไอคอนแรกจะถูกเพิ่มลงในโครงการ

ทําตามขั้นตอนเดียวกันเพื่อเลือกไอคอนที่สอง

ไฟล์ไอคอนที่สองจะถูกเพิ่มลงในโครงการ

การตั้งค่าของไอคอนแรกจะถูกเขียนทับ แต่โปรดละเว้นเนื่องจากการตั้งค่าบนตัวแก้ไขไม่เกี่ยวข้องในครั้งนี้ สิ่งสําคัญคือต้องมีไอคอนสองไอคอนที่ลงทะเบียนไว้ในโครงการ

ตรวจสอบการกําหนดค่าบิลด์

ตรวจสอบการกําหนดค่าบิลด์ในแถบเครื่องมือ

ใช้ชื่อของการกําหนดค่าบิลด์ที่แสดงที่นี่เป็นการตัดสินใจสลับไอคอน ในโครงการเริ่มต้นมี "ดีบัก" และ "ปล่อย" ดังนั้นเราจะใช้สิ่งนี้

เปิดรหัสในแฟ้มโครงการ

คลิกขวาที่ไฟล์โครงการแล้วเลือกแก้ไขไฟล์โครงการ

เมนูนี้จะพร้อมใช้งานสําหรับโครงการ .NET (Core) เท่านั้น โครงการ NET Framework เปิดแฟ้ม.csproj ในตัวแก้ไขข้อความ

แก้ไขโค้ดในไฟล์โครงการ

โครงการ .NET (Core) อธิบายไว้ที่นี่เป็นตัวอย่าง แต่ กรอบ NET ขั้นตอนจะเหมือนกัน

ผมคิดว่ารหัสสําหรับโครงการสุทธิ.NET ที่มีลักษณะเช่นนี้ (เป็นตัวอย่างดังนั้นมันจึงขึ้นอยู่กับโครงการ)

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <OutputType>WinExe</OutputType>
    <TargetFramework>net6.0-windows</TargetFramework>
    <Nullable>enable</Nullable>
    <UseWindowsForms>true</UseWindowsForms>
    <ImplicitUsings>enable</ImplicitUsings>
    <ApplicationIcon>2.ico</ApplicationIcon>
  </PropertyGroup>

  <ItemGroup>
    <Content Include="2.ico" />
  </ItemGroup>

</Project>

ค่าของใน PropertyGroup > ApplicationIcon นี้คือไฟล์ไอคอนที่ใช้กับไฟล์ปฏิบัติการ แท็กเหล่านี้สามารถกําหนดเงื่อนไขได้และหากต้องการเปลี่ยนแอปพลิเคชันของไอคอนขึ้นอยู่กับการกําหนดค่าบิลด์ให้แก้ไขส่วนดังนี้ ApplicationIcon :

<ApplicationIcon Condition=" '$(Configuration)' == 'Debug' ">1.ico</ApplicationIcon>
<ApplicationIcon Condition=" '$(Configuration)' == 'Release' ">2.ico</ApplicationIcon>

Conditionคุณสามารถรวมเงื่อนไขในพารามิเตอร์ซึ่งมี$(Configuration)ชื่อของการกําหนดค่าบิลด์ในขณะที่สร้าง เงื่อนไขคือถ้าเป็นและถ้าใช้สําหรับ DebugRelease 1.ico2.ico . ถ้าคุณได้เปลี่ยนชื่อการกําหนดค่าบิลด์ในโครงการของคุณ ให้เปลี่ยนชื่อเป็นDebug Release หากคุณต้องการเพิ่มไอคอน ให้เพิ่มแท็ก

สิ่งที่เหลืออยู่คือการบันทึกโค้ดและสร้างด้วยการกําหนดค่าบิลด์ที่ต้องการ

สร้างผลลัพธ์

ไฟล์ปฏิบัติการที่สร้างขึ้นด้วย Debug มีลักษณะดังนี้:

ไฟล์ปฏิบัติการที่สร้างขึ้นด้วย Release จะมีลักษณะดังนี้: