คำถามติดแท็ก com

7
คุณสามารถอธิบาย STA และ MTA ได้ไหม
คุณช่วยอธิบาย STA และ MTA ด้วยคำพูดของคุณเองได้ไหม? นอกจากนี้สิ่งที่เป็นหัวข้อพาร์ทเมนต์และพวกเขาเกี่ยวข้องกับ COM เท่านั้น? ถ้าเป็นเช่นนั้นทำไม

5
วิธีจัดการ AccessViolationException
ฉันกำลังใช้วัตถุ COM (MODI) จากภายในแอปพลิเคชัน. net ของฉัน วิธีการที่ฉันเรียกใช้จะเป็นการ System.AccessViolationException ซึ่งถูกสกัดกั้นโดย Visual Studio สิ่งที่แปลกก็คือฉันมีการโทรของฉันในลอง catch ซึ่งมีตัวจัดการสำหรับ AccessViolationException, COMException และทุกอย่างอื่น แต่เมื่อ Visual Studio (2010) ดัก AccessViolationException ดีบักเกอร์จะแบ่งการเรียกเมธอด (doc.OCR) และถ้าฉันผ่านมันไปยังบรรทัดถัดไปแทนที่จะเข้าสู่ catch catch นอกจากนี้หากฉันเรียกใช้สิ่งนี้นอกสตูดิโอภาพแอปพลิเคชันของฉันขัดข้อง ฉันจะจัดการข้อยกเว้นนี้ที่ถูกส่งออกไปภายในวัตถุ COM ได้อย่างไร MODI.Document doc = new MODI.Document(); try { doc.Create(sFileName); try { doc.OCR(MODI.MiLANGUAGES.miLANG_ENGLISH, false, false); sText = doc.Images[0].Layout.Text; } catch …
185 c#  .net  exception  com  modi 

4
คอมไพเลอร์ C # ตรวจจับประเภท COM ได้อย่างไร
แก้ไข:ฉันได้เขียนผลขึ้นเป็นบล็อกโพสต์ คอมไพเลอร์ C # ใช้ COM ประเภทค่อนข้างน่าอัศจรรย์ ตัวอย่างเช่นคำสั่งนี้ดูเหมือนปกติ ... Word.Application app = new Word.Application(); ... จนกว่าคุณจะรู้ว่านั่นApplicationคือส่วนต่อประสาน การเรียกตัวสร้างบนอินเทอร์เฟซหรือไม่ Yoiks! นี้จริงได้รับการแปลเป็นโทรไปType.GetTypeFromCLSID()และอื่น ๆ Activator.CreateInstanceเพื่อ นอกจากนี้ใน C # 4 คุณสามารถใช้อาร์กิวเมนต์ที่ไม่อ้างอิงสำหรับrefพารามิเตอร์และคอมไพเลอร์เพิ่งเพิ่มตัวแปรท้องถิ่นที่จะผ่านการอ้างอิงโดยยกเลิกผลลัพธ์: // FileName parameter is *really* a ref parameter app.ActiveDocument.SaveAs(FileName: "test.doc"); (ใช่มีข้อโต้แย้งจำนวนมากหายไปพารามิเตอร์ตัวเลือกไม่ดีใช่ไหม :) ฉันพยายามตรวจสอบพฤติกรรมของคอมไพเลอร์และฉันไม่ได้ปลอมส่วนแรก ฉันสามารถทำส่วนที่สองโดยไม่มีปัญหา: using System; using System.Runtime.InteropServices; using System.Runtime.CompilerServices; [ComImport, GuidAttribute("00012345-0000-0000-0000-000000000011")] public interface …

5
ฉันจะสร้าง UUID ใน C # ได้อย่างไร
ฉันกำลังสร้างไฟล์. idl โดยใช้โปรแกรม ฉันจะสร้าง UUID สำหรับอินเทอร์เฟซและวิธีการแบบเป็นโปรแกรมได้อย่างไร ฉันสามารถสร้าง UUID แบบเป็นโปรแกรมได้หรือไม่

13
ไม่มีการอ้างอิง Microsoft.Office.Core
การใช้ตัวอย่างที่ให้ไว้ในcodeprojectฉันกำลังดิ้นรนหาวิธีหาข้อมูลอ้างอิงไปยังไลบรารี Microsoft.Office.Core ฉันได้รับข้อผิดพลาด "ไม่พบส่วนประกอบที่อ้างถึง 'Microsoft.Office.Core'" ฉันมี Office 2007 Enterprise Edition และ Outlook 2003 เท่านั้นที่ติดตั้งในระบบนี้ นี่อาจเป็นสาเหตุของเรื่องนี้หรือไม่? มิฉะนั้นฉันควรจะอ้างอิง dll ใดโดยเฉพาะ

2
COM (Component Object Model) โดยสรุปคืออะไร? [ปิด]
ปิด . คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ขณะนี้ยังไม่ยอมรับคำตอบ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เน้นไปที่ปัญหาเดียวโดยแก้ไขโพสต์นี้เท่านั้น ปิดให้บริการใน7 ปีที่ผ่านมา ปรับปรุงคำถามนี้ ดูเหมือนว่าวัตถุ COM เป็นวัตถุใช้งานทั่วไปที่ควบคุมโดยระบบปฏิบัติการ วัตถุเป็นไปตามอินเทอร์เฟซที่เข้มงวดและอนุญาตให้คุณสอบถามวัตถุเพื่อกำหนดข้อมูล นี่คือวัตถุ COM หรือไม่?
89 c++  com 

5
สร้างไฟล์รายการสำหรับ COM ที่ไม่ต้องลงทะเบียน
ฉันมีแอปพลิเคชันบางตัว (เนทีฟบางตัวบางตัว. NET) ที่ใช้ไฟล์รายการเพื่อให้สามารถใช้งานได้โดยแยกออกจากกันโดยไม่ต้องลงทะเบียน COM ส่วนกลางใด ๆ ตัวอย่างเช่นการอ้างอิงบนเซิร์ฟเวอร์ dbgrid32.ocx com จะถูกประกาศดังต่อไปนี้ในไฟล์ myapp.exe.manifest ซึ่งอยู่ในโฟลเดอร์เดียวกับ myapp.exe: <?xml version="1.0" encoding="utf-8" standalone="yes"?> <assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1"> <assemblyIdentity type="win32" name="myapp.exe" version="1.2.3.4" /> <dependency> <dependentAssembly> <assemblyIdentity type="win32" name="dbgrid32.ocx" version="5.1.81.4" /> </dependentAssembly> </dependency> </assembly> dbgrid32.ocx ถูกปรับใช้กับโฟลเดอร์เดียวกันพร้อมกับไฟล์ dbgrid32.ocx.manifest ของตัวเอง: <?xml version="1.0" encoding="utf-8" standalone="yes"?> <assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1"> <assemblyIdentity type="win32" name="dbgrid32.ocx" …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.