我有两个form,第一个form声明了一个dll的函数,每二个如何调用这个函数

cnccbbn 2003-08-21 08:32:38
谢谢
...全文
35 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
Knight94 2003-08-22
  • 打赏
  • 举报
回复
在C#中没有.h的概念,复用的方法可以如下:
方法1、你可以写入一个单独cs文件中,那么以后调用此文件,把此文件加入,调用者需要引入此文件的命名空间;

方法2、写一类库,编译成Dll,那么以后想调用,把此Dll引入即可;
Knight94 2003-08-21
  • 打赏
  • 举报
回复
例如:
public class APIDeclare
{
DllImport("kernel32")] public static extern void GetWindowsDirectory (StringBuilder WinDir,int count);

}

每个窗口调用可用APIDelcare.GetWindowsDirectory.
Knight94 2003-08-21
  • 打赏
  • 举报
回复
如果是同一个工程,可以用第一个form的类名+.GetWindowsDirectory即可;
不过建议,把这种声明最好单写一个类,放在一个单独的文件中,可供以后复用。
cnccbbn 2003-08-21
  • 打赏
  • 举报
回复
如果有10个form要使用GetWindowsDirectory,就必需在10个form中声明吗
[DllImport("kernel32")] public static extern void GetWindowsDirectory(StringBuilder WinDir,int count);
ddy2000 2003-08-21
  • 打赏
  • 举报
回复
如果只是引用,那在Form2中也得引用,才可使用

cnccbbn 2003-08-21
  • 打赏
  • 举报
回复
在form1中声明了
[DllImport("kernel32")] public static extern void GetWindowsDirectory(StringBuilder WinDir,int count);

想在form2中使用GetWindowsDirectory应如何做
zhongwanli 2003-08-21
  • 打赏
  • 举报
回复
如果是在form 中声明函数

你只要在form1 中声明 form2 的类
然后调用form2 的方法即可!
zhongwanli 2003-08-21
  • 打赏
  • 举报
回复
不明白,一个form 声明了一个dll 的函数!
什么意思?
cnccbbn 2003-08-21
  • 打赏
  • 举报
回复
我可不可以把api引用做到一个.h文件里
在form1和form2中,#include "..\\api.h"呢

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧