นามสกุล ArcMap 9.3 กับ 10


10

ฉันได้อัปเดตส่วนขยาย ArcMap ของเราให้ทำงานกับ ArcMap 10 - ส่วนใหญ่แค่เปลี่ยนการอ้างอิงจาก ESRI.ArcGIS.ADF เป็น ESRI.ArcGIS.ADF.Local และตั้งค่าคุณสมบัติ 'รุ่นเฉพาะ' สำหรับการอ้างอิงทั้งหมดเป็นเท็จและยังใช้ใหม่ ESRIRegAsm.exe เพื่อลงทะเบียน ดังนั้นฉันสงสัยว่าตอนนี้ถ้าฉันสามารถสร้างส่วนขยายเดียวที่จะทำงานกับทั้ง 9.3.1 และ 10.0 หรือเราต้องการไบนารีแยกต่างหากสำหรับแต่ละผลิตภัณฑ์หรือไม่


คำถามที่ดี. ฉันไม่มีปัญหากับหนึ่งในห้องสมุดคลาส 9.3 ของฉัน (ไม่มีส่วนขยาย) แต่ฉันต้องทำสิ่งที่คุณทำกับส่วนขยายเพราะฉันใช้วิธีที่เลิกใช้ในคลาสที่ย้ายไปที่เนมสเปซอื่น
Jay Cummins

@solsberg ฉันรู้ว่าเธรดนั้นเก่าไปหน่อย แต่ผลลัพธ์ของการสอบสวนของคุณคืออะไร บริการสร้างส่วนขยายเดียวของคุณมีทั้ง 9.3.1 และ 10 หรือในที่สุดคุณก็ต้องการงานสร้างสองชิ้นหรือไม่?
elrobis

คำตอบ:


2

ตามนี้คุณต้องคอมไพล์ใหม่:

ที่ ArcGIS 10 ESRI จะไม่ให้ไฟล์นโยบายอีกต่อไป ดังนั้น ArcGIS 9.3 และโครงการพัฒนาก่อนหน้านี้ทั้งหมดที่ส่งไปยัง ArcGIS 10 จะต้องทำการคอมไพล์ใหม่

http://help.arcgis.com/en/sdk/10.0/arcobjects_net/conceptualhelp/index.html#//0001000002m2000000


สำหรับคนที่ชอบคิด "ไฟล์นโยบายคืออะไร" ฉันพบลิงค์ต่อไปนี้มีประโยชน์ ถ้าฉันเข้าใจอย่างถูกต้องนั่นหมายถึง 9.x runtimes จะพยายามส่งต่อกิจกรรมในเนมสเปซ ESRI ล่วงหน้าโดยอัตโนมัติ (ถ้าจำเป็น) โดยรันไทม์รุ่นหนึ่ง: resources.esri.com/help/9.3/arcgisengine/dotnet/
elrobis

2

ฉันยังพบความแตกต่างเล็กน้อยที่อาจมีผลกระทบด้านลบ ตัวอย่างเช่นโครงสร้าง tagRECT ถูกย้ายไปยังไลบรารีอื่น สิ่งนี้จะไม่ทำให้เกิดปัญหาเมื่อคุณสร้าง แต่อาจทำให้เกิดปัญหาที่รันไทม์เนื่องจาก RCW จะพยายามส่งต่อสายไปยังไลบรารี COM ที่ไม่ถูกต้อง

อาจมีสิ่งอื่น ๆ ซ่อนอยู่ในห้องสมุด 10.0 เช่นนี้ดังนั้นคุณต้องระวัง มันอาจจะไม่เป็นปัญหาหากคุณไม่ได้ใช้วัตถุที่ถูกย้าย แต่มันมีความเสี่ยง

ในที่สุดคุณอาจจำเป็นต้องใช้มันเป็นกรณี ๆ ไป โดยทั่วไปแล้วฉันพบว่าการย้ายถิ่นจะไม่เจ็บปวดอย่างเป็นธรรม


รายการอย่างเป็นทางการของการเพิ่มส่วนต่อประสาน (เพิ่ม) การย้าย (ย้าย) และการลบ (ลบ) สามารถพบได้ที่นี่: help.arcgis.com/th/sdk/10.0/arcobjects_net/conceptualhelp/ …
elrobis
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.