สร้าง Key สำหรับ Sign Project ในการ Deploy Click Once ให้มีอายุมากกว่า 1 ปี
สร้าง Key สำหรับ Sign Project ในการ Deploy Click Once ให้มีอายุมากกว่า 1 ปี
ท่านที่ใช้งาน Visual Studio 2008 คงเคยใช้ การ Deploy ด้วย Click Once มาแล้ว และ
สำหรับท่านที่ มีการ Sign the ClickOnce manifests ก็อาจจะเคยใช้ Test Certificate มาแล้ว
และคงเคยเจอปัญหา เมื่อ Certificate หมดอายุ แล้ว User ไม่สามารถใช้ Application ที่เรียกใช้
ผ่าน URL ของ ClickOnce ได้มาแล้ว
วิธีการแก้ปัญหา ที่ผมเจอ คือ
1. ทำการ Update Certificate ตัวเดิม ให้มี วันที่ Expire นานขึ้น
ผมทำการทดสอบแล้่วปรากฎ ว่ายาก มาก และ ไม่ work
2. ทำการ สร้าง Key ใหม่ ที่มี วันที่ Expire นานขึ้น
ผมทำการทดสอบแล้่ว วิธีการ ไม่ยาก แต่ขั้นตอนเยอะ หน่อย แต่ work ครับ
และ ผมจะกล่าวถึงวิธีที่ สองกันนะครับ ซึ่งวิธีที่ 2 นั้น ท่านต้องทำการ Update Client ที่ต้องใช้
โปรแกรม เป็น .NET Framework 2 SP1 ก่อนนะครับ ถึงจะทำการ Sign manifests ได้
เพราะว่า ไม่ฉะนั้น ท่านจะต้อง UnInstall Application ออกแบบ Manual
แล้ว ถึงจะทำการ Deploy Application ไปได้
วิธีการ สร้าง key สำหรับ ใช้ Sign manifest ทำได้ดังนี้
1. ใช้ tools ที่ชื่อว่า makecert หาได้จาก Windows SDK ครับ หรือจะลอง Search ใน Program File อยู่ก็ได้ครับ ลองดูที่ C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin ครับ
ใช้ Command line โดยไปที่ Start > Run พิมพ์ cmd แล้วกด Enter
2. ใช้่คำสั่ง CD \
และ CD C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin
3. ใช้คำสั่ง makecert -r -sv AppName.pvk -n "CN=SignName" -b 01/01/2009 -e 01/01/2099 AppName.cer
- ในข้อ 3 นี้ ท่านสามารถ กำหนด ชื่อ key และ SignName วันเริ่ม -b และ วันหมดอายุที่ -e ได้ตามต้องการ
หลังจาก ท่าน Enter ท่านจะได้ File AppName.pvk และ AppName.cer สำหรับ นำไปสร้าง AppName.pfx ต่อไป
4. พอสั่งแล้ว จะมีหน้าจอ ให้ระบุ password ของ Private Key ให้ทำการ ระบุ
5. ทำการสร้าง pfx ไฟล์ ที่จะนำไปใช้ Sign โดยใช้ Tools pvk2pfx ซึ่งจะอยู่ใน path เดียวกับ makecert
โดยใช้คำสั่ง
>pvk2pfx -pvk AppName.pvk -spc AppName.cer -pfx AppName.pfx -po Password –f
ผลลัพธ์ จะได้ไฟล์ AppName.pfx และให้นำไปใช้ Sign Project หรือ manifest ได้
ท่านที่ใช้งาน Visual Studio 2008 คงเคยใช้ การ Deploy ด้วย Click Once มาแล้ว และ
สำหรับท่านที่ มีการ Sign the ClickOnce manifests ก็อาจจะเคยใช้ Test Certificate มาแล้ว
และคงเคยเจอปัญหา เมื่อ Certificate หมดอายุ แล้ว User ไม่สามารถใช้ Application ที่เรียกใช้
ผ่าน URL ของ ClickOnce ได้มาแล้ว
วิธีการแก้ปัญหา ที่ผมเจอ คือ
1. ทำการ Update Certificate ตัวเดิม ให้มี วันที่ Expire นานขึ้น
ผมทำการทดสอบแล้่วปรากฎ ว่ายาก มาก และ ไม่ work
2. ทำการ สร้าง Key ใหม่ ที่มี วันที่ Expire นานขึ้น
ผมทำการทดสอบแล้่ว วิธีการ ไม่ยาก แต่ขั้นตอนเยอะ หน่อย แต่ work ครับ
และ ผมจะกล่าวถึงวิธีที่ สองกันนะครับ ซึ่งวิธีที่ 2 นั้น ท่านต้องทำการ Update Client ที่ต้องใช้
โปรแกรม เป็น .NET Framework 2 SP1 ก่อนนะครับ ถึงจะทำการ Sign manifests ได้
เพราะว่า ไม่ฉะนั้น ท่านจะต้อง UnInstall Application ออกแบบ Manual
แล้ว ถึงจะทำการ Deploy Application ไปได้
วิธีการ สร้าง key สำหรับ ใช้ Sign manifest ทำได้ดังนี้
1. ใช้ tools ที่ชื่อว่า makecert หาได้จาก Windows SDK ครับ หรือจะลอง Search ใน Program File อยู่ก็ได้ครับ ลองดูที่ C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin ครับ
ใช้ Command line โดยไปที่ Start > Run พิมพ์ cmd แล้วกด Enter
2. ใช้่คำสั่ง CD \
และ CD C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin
3. ใช้คำสั่ง makecert -r -sv AppName.pvk -n "CN=SignName" -b 01/01/2009 -e 01/01/2099 AppName.cer
- ในข้อ 3 นี้ ท่านสามารถ กำหนด ชื่อ key และ SignName วันเริ่ม -b และ วันหมดอายุที่ -e ได้ตามต้องการ
หลังจาก ท่าน Enter ท่านจะได้ File AppName.pvk และ AppName.cer สำหรับ นำไปสร้าง AppName.pfx ต่อไป
4. พอสั่งแล้ว จะมีหน้าจอ ให้ระบุ password ของ Private Key ให้ทำการ ระบุ
5. ทำการสร้าง pfx ไฟล์ ที่จะนำไปใช้ Sign โดยใช้ Tools pvk2pfx ซึ่งจะอยู่ใน path เดียวกับ makecert
โดยใช้คำสั่ง
>pvk2pfx -pvk AppName.pvk -spc AppName.cer -pfx AppName.pfx -po Password –f
ผลลัพธ์ จะได้ไฟล์ AppName.pfx และให้นำไปใช้ Sign Project หรือ manifest ได้
ความคิดเห็น
แสดงความคิดเห็น