积极答复者
C#组件怎么做的,打包封装、以后调用?com和dll怎么调用里面的内容的?

问题
答案
-
你好,
将程序集封装DLL文件或是COM组件就可以被其他项目调用。
比如,你用C#写的代码(程序集),在编译选项中,把COM勾选上,那么它就可以在C++中使用。
建议看一下相关资料,比如C#高级编程,关于程序集那章。
如果你想复用UI上的控件,那么看一下MSDN关于自定义控件的资料。或是直接下载一个有源代码的控件,看一下你就明白个大概了。
顺便说一下,简单来说,一般的DLL文件复用,是希望我们之前写的代码可以复用,而COM组件的复用,是我们希望,复用不仅仅是文件,同一开发语言下的复用,而是二进制层次上的复用。这样,就更方便了。
至于如何使用,我一般是要么看相关文档,要么是点开,看看里边的命名空间是什么,提供哪些方法。
1+1=The World >>> BLOG=http://blog.csdn.net/liuning800203 >>> Email=liuning800203@hotmail.com- 已编辑 0_1_TheWorld 2010年12月14日 5:09 补充
- 已标记为答案 王基任 2010年12月14日 9:43
-
您好, 其实.Net是被设计为面向组件的,简单来说一个类便可成为一个组件。(为什么这么说,请参考《.Net组件程序设计》)。
所以您在vs中创建一个类库项目 ,把公用部分的代码放到一个类 里,这样便可生成一个dll ,用时引用 即可。
在MSDN中组件被普遍认为是继承IComponet的类,如果您的公用代码涉及到界面则需要使用控件。
关于组件和控件的官方参考和讨论可以参考:http://msdn.microsoft.com/zh-cn/library/ms171766(v=VS.90).aspx
如果急于演练,请参考:http://msdn.microsoft.com/zh-cn/library/6d4270b7(v=VS.90).aspx
- 已标记为答案 王基任 2010年12月14日 9:40
-
dear
你使用VS开启的专案建立的应用程式都是组件,比如 Winform专案,他也是一个类别。
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
}
}
经由VS编译完成她会在bin资料夹里的debug或release产生组件,这些dll或exe都可以拿来引用。因为Winform所包含的东西太多,所以一般开发组件会建立Class Library专案,Class Library所建立的大都是后端程式的演算逻辑。
namespace ClassLibrary1
{
public class Class1
{
}
}
类别设计也就是design pattern是一门艺术,若你对C#与法以熟兮,建议你看程杰的"大话设计模式"一书
秘訣無它,唯勤而已 http://www.dotblogs.com.tw/yc421206/- 已标记为答案 王基任 2010年12月14日 9:46
全部回复
-
您好, 其实.Net是被设计为面向组件的,简单来说一个类便可成为一个组件。(为什么这么说,请参考《.Net组件程序设计》)。
所以您在vs中创建一个类库项目 ,把公用部分的代码放到一个类 里,这样便可生成一个dll ,用时引用 即可。
在MSDN中组件被普遍认为是继承IComponet的类,如果您的公用代码涉及到界面则需要使用控件。
关于组件和控件的官方参考和讨论可以参考:http://msdn.microsoft.com/zh-cn/library/ms171766(v=VS.90).aspx
如果急于演练,请参考:http://msdn.microsoft.com/zh-cn/library/6d4270b7(v=VS.90).aspx
- 已标记为答案 王基任 2010年12月14日 9:40
-
你好,
将程序集封装DLL文件或是COM组件就可以被其他项目调用。
比如,你用C#写的代码(程序集),在编译选项中,把COM勾选上,那么它就可以在C++中使用。
建议看一下相关资料,比如C#高级编程,关于程序集那章。
如果你想复用UI上的控件,那么看一下MSDN关于自定义控件的资料。或是直接下载一个有源代码的控件,看一下你就明白个大概了。
顺便说一下,简单来说,一般的DLL文件复用,是希望我们之前写的代码可以复用,而COM组件的复用,是我们希望,复用不仅仅是文件,同一开发语言下的复用,而是二进制层次上的复用。这样,就更方便了。
至于如何使用,我一般是要么看相关文档,要么是点开,看看里边的命名空间是什么,提供哪些方法。
1+1=The World >>> BLOG=http://blog.csdn.net/liuning800203 >>> Email=liuning800203@hotmail.com- 已编辑 0_1_TheWorld 2010年12月14日 5:09 补充
- 已标记为答案 王基任 2010年12月14日 9:43
-
dear
你使用VS开启的专案建立的应用程式都是组件,比如 Winform专案,他也是一个类别。
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
}
}
经由VS编译完成她会在bin资料夹里的debug或release产生组件,这些dll或exe都可以拿来引用。因为Winform所包含的东西太多,所以一般开发组件会建立Class Library专案,Class Library所建立的大都是后端程式的演算逻辑。
namespace ClassLibrary1
{
public class Class1
{
}
}
类别设计也就是design pattern是一门艺术,若你对C#与法以熟兮,建议你看程杰的"大话设计模式"一书
秘訣無它,唯勤而已 http://www.dotblogs.com.tw/yc421206/- 已标记为答案 王基任 2010年12月14日 9:46