COM and .NET - Links to documents and tutorials: Difference between revisions

From Yggenyk
Jump to navigation Jump to search
No edit summary
 
(10 intermediate revisions by the same user not shown)
Line 2: Line 2:
[[Category:Software development]]
[[Category:Software development]]
<google>ENGELSK</google>
<google>ENGELSK</google>
==Making C# .NET COM Servers==
* [http://www.codeproject.com/KB/COM/nettocom.aspx Exposing .NET Components to COM - A method of calling .NET functions from a COM enabled non .NET environment through a COM callable wrapper]
* [http://www.codeproject.com/KB/COM/nettocom.aspx Exposing .NET Components to COM - A method of calling .NET functions from a COM enabled non .NET environment through a COM callable wrapper]
* [http://www.codeproject.com/KB/COM/BuildCOMServersInDotNet.aspx Building COM Servers in .NET - Learn the fundamental principles of building COM DLL and EXE Servers using a .NET language]
* [http://www.codeproject.com/KB/COM/BuildCOMServersInDotNet.aspx Building COM Servers in .NET - Learn the fundamental principles of building COM DLL and EXE Servers using a .NET language]
* [http://www.simple-talk.com/dotnet/visual-studio/build-and-deploy-a-.net-com-assembly/ Build and Deploy a .NET COM Assembly]
===Merge all dependencies into one .NET COM component===
* [http://research.microsoft.com/en-us/people/mbarnett/ilmerge.aspx ILMerge]
* [http://www.microsoft.com/downloads/details.aspx?FamilyID=22914587-b4ad-4eae-87cf-b14ae6a939b0&displaylang=en ILMerge download]
* [http://www.codeproject.com/KB/dotnet/mergingassemblies.aspx Merging .NET assemblies using ILMerge]


===Locating Assemblies===
* [http://msdn.microsoft.com/en-us/library/yx7xezcf.aspx How the Runtime Locates Assemblies]
:* [http://msdn.microsoft.com/en-us/library/8f6988ab.aspx Step 1: Examining the Configuration Files]
:* [http://msdn.microsoft.com/en-us/library/aa98tba8.aspx Step 2: Checking for Previously Referenced Assemblies]
:* [http://msdn.microsoft.com/en-us/library/4a9t8a9a.aspx Step 3: Checking the Global Assembly Cache]
:* [http://msdn.microsoft.com/en-us/library/15hyw9x3.aspx Step 4: Locating the Assembly through Codebases or Probing]
====Loading Assemblies from code====
* [http://msdn.microsoft.com/en-us/library/25y1ya39.aspx How to: Load Assemblies into an Application Domain] (Preferred)
* [http://msdn.microsoft.com/en-us/library/system.reflection.assembly.loadfrom.aspx Assembly..::.LoadFrom Method]
==General links about COM how it works and how to register components==
* [http://msdn.microsoft.com/en-us/library/ms862119.aspx COM and DCOM Registry Settings for CE 5.0]
* [http://msdn.microsoft.com/en-us/library/ms691424(VS.85).aspx CLSID Key]
===Component Object Model (General)===
* [http://msdn.microsoft.com/en-us/library/ms809311.aspx DCOM Architecture]
* [http://msdn.microsoft.com/en-us/library/ms809975.aspx Creating and Registering COM Components with LocalService]
* [http://msdn.microsoft.com/en-us/library/ms809974.aspx Inside Distributed COM: Type Libraries and Language Integration]
==Trouble shooting==


If it won't work and you get strange errors like<br>  
If it won't work and you get strange errors like<br>  
Line 11: Line 36:
* 80131522<br>
* 80131522<br>
Try putting try/catch handlers in your .NET code (especially the constructor) with tracing...<br>
Try putting try/catch handlers in your .NET code (especially the constructor) with tracing...<br>
Use ''Trace.WriteLine(e);'' and Sysinternals Dbgview.exe to trace what is happening
Use '''Trace.WriteLine(e);''' and Sysinternals Dbgview.exe to trace what is happening

Latest revision as of 07:25, 19 February 2009

<google>ENGELSK</google>

Making C# .NET COM Servers

Merge all dependencies into one .NET COM component

Locating Assemblies

Loading Assemblies from code

General links about COM how it works and how to register components

Component Object Model (General)

Trouble shooting

If it won't work and you get strange errors like

  • CreateObject (-2146233079 automation error).
  • 80010002 "Call was canceled by the message filter"
  • 80131522

Try putting try/catch handlers in your .NET code (especially the constructor) with tracing...
Use Trace.WriteLine(e); and Sysinternals Dbgview.exe to trace what is happening

id=siteTree