关于C# winform程序引用DLL文件的问题求教

在做一个C# winform的程序,程序中要用到oracle,我用的是一个无需安装的oracle客户端,将DLL文件copy到程序里面,为什么连不上数据库?是不是思路有问题?或者程序找不到这些DLL文件?请高人帮忙指点一下。

调用第三方的DLL,需要将你的dll文件添加引用!(程序运行之后,dll文件会在你的项目文件夹的bin\debug\文件夹下)

然后在程序里面还要用代码引用一次!!

例如: [DllImport("win32.dll")]
使用dllImport需要添加程序集using System.Runtime.InteropServices;

下面是一个简单的例子:

public class ConnectNet
{
/// <summary>
/// 该类主要用于检测网络是否连通,调用系统自带的API函数wininet.dll
/// 使用该dll内的InternetGetConnectedState方法
/// </summary>
/// <param name="connnectionDescription">方法参数一,表示网络连接状态</param>
/// <param name="reservedValue">方法参数2,保留参数</param>
/// <returns>state ,类型为Bool</returns>
[DllImport("wininet.dll")]
private extern static bool InternetGetConnectedState(out int connnectionDescription, int reservedValue);

public bool IsConnected()
{
int i = 0;
bool state = InternetGetConnectedState(out i, 0);
return state;

}

}
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-07-13
在代码里面能引用到DLL里面的类了么?引用后是否编译通过?如果要引用这些DLL,仅仅copy到程序里是不行的,还要在项目中增加引用。
第2个回答  2010-07-13
添加引用了吗?

关于C# winform程序引用DLL文件的问题求教
调用第三方的DLL,需要将你的dll文件添加引用!(程序运行之后,dll文件会在你的项目文件夹的bin\\debug\\文件夹下)然后在程序里面还要用代码引用一次!!例如: [DllImport("win32.dll")]使用dllImport需要添加程序集using System.Runtime.InteropServices;下面是一个简单的例子:public class ConnectNet { ...

"c#编程添加引用dll文件"后怎样调用?
using DLL文件的命名空间,然后就可以调用命名空间中的类。如果是不是用c#编写的dll文件,那么就把dll放到合适位置(winform程序目录下,web程序bin文件夹下,system32文件夹下,)然后 using System.Runtime.InteropServices;[DllImport("dll文件名.dll")]public static extern 类型 方法名(参数);即可调用...

C# winform程序 中调用 [DllImport("BX_IV.dll")] 这个dll 报错 急急...
这是你的内存和主板兼容性不是很好,其实这也基本上没有大碍。原因是:1 内存条出现问题了,2.内存型号和主板兼容性不好 3 内存型号不相同,大小不一样 这都会导致这种问题的出现。

C#中怎么调用外部DLL
把你的DLL放程序bin目录下,如果是WinForm就放Bin\\Debug目录下 ,实在不行就放C:\\Windows\\system32目录下。先在要用到DLL的单元里面声明DLL的方法和参数(要和DLL中提供的方法一致):[DllImport("imgMMPI.dll", CharSet = CharSet.Ansi, SetLastError = true)] public static extern bool DrawM...

C# winform 引用问题 引用了SHDocVw.dll。 把exe单独拷出来就报异常...
你要开发BHO项目么?从C:\\WIndows\\System32目录下加载SHDocVw.dll Interop.SHDocVw这个Dll不是GAC的,所以如果和exe不在同一个目录下,是找不到这个文件的 可以打开VS的控制台程序,执行命令gacutil \/i ***\\Interop.SHDocVw.dll 把你的Dll注册成GAC的就可以了,卸载是 gacutil \/u ...

c# winform程序 调用读卡器的c++ dll ,高分求大虾们指导。
先用C#专用的DLL导入格式(不会自己找,网上多的是)唯一注意的就是参数要转换成C#的参数类型 int ReadCard(int portnumber,int tracknumber,int timeout,unsigned char* track1,int* track1len,unsigned char* track2,int* track2len,unsigned char* track3,int* track3len)把其中的指针类型换成...

C# WinForm错误提示:系统找不到指定的文件
好解决。你编译的时候,看output窗口,里面有你加入到项目里的各个引用的.dll文件,含路径名。(你C#项目要操作Execl,肯定加入了3个COM。)你按照output提供的路径名,一个一个找到这些.dll。把这些.dll文件复制到你可执行文件的目录下面。问题就解决了。

c#Winform用户控件怎么在别的项目中使用
设置输出类型为类库,然后在另一个项目中引用这个dll文件 或者直接把这个项目加入到另外的项目的解决方案,然后也引用这个控件的项目

c# winform 中 怎样把dll封装到exe中
利用pause指令还能随时暂停ILMerge运行过程,可以看到merge失败时是哪里的问题。(2)、嵌入DLL作为资源。推荐使用这种方式。这个方法是CLR via C#的作者发明的(貌似,反正我是从他那里学的),原帖的地址http:\/\/blogs.msdn.com\/b\/microsoft_press\/archive\/2010\/02\/03\/jeffrey-richter-excerpt-2-from-...

c#引用 和命名空间问题
根据上述两种情况.很明显的得知.C# 中. 所有的DLL文件与您的项目均是解耦的.您的项目也是单独的一个命名空间划分.DLL与DLL之间没有必然联系.即使您在单纯敲代码的层面上看 System.Net;直接输入这个可以.但是当您新建的是WINFORM程序.System.Net;也就不能用了.这个原因是.VS自动帮您引用了部分DLL 由...

相似回答