user-0 提问: 调用系统DLL不稳定的问题

回复:
user: user-1
content: 引用 11 楼 bigbaldy 的回复:有SharpPcap，所以根本不需要自己写 我前面都说用wireshark了。楼主偏要自己写啊。

user: user-1
content: 引用 8 楼 qq554006164 的回复:只将（wpcap.dll和Packet.dll）两个DLL拷贝到system32目录，要报错：无法加载 DLL“wpcap”: 找不到指定的模块。  然后我就用regsvr32注册不了 应该还安装了对应的驱动。  看winpcap使用手册  或者在安装winpcap时使用 Process Monitor 实时监视文件系统、注册表、进程、线程和 DLL 活动。 http://www.microsoft.com/china/technet/sysinternals/utilities/processmonitor.mspx

user: user-2
content: 有SharpPcap，所以根本不需要自己写

user: user-0
content: 引用 9 楼 user-3 的回复:libpcap 能说清楚点儿吗

user: user-3
content: libpcap

user: user-0
content: 只将（wpcap.dll和Packet.dll）两个DLL拷贝到system32目录，要报错：无法加载 DLL“wpcap”: 找不到指定的模块。  然后我就用regsvr32注册不了

user: user-0
content: 引用 6 楼 zhao4zhong1 的回复:[quote=引用 5 楼 qq554006164 的回复:] [quote=引用 3 楼 zhao4zhong1 的回复:] [quote=引用 2 楼 qq554006164 的回复:] [quote=引用 1 楼 zhao4zhong1 的回复:] 权限或UAC或防火墙或杀毒软件惹的祸。 推荐使用抓包软件wireshark 我想自己写个抓包类，生成DLL给C#调用[/quote] 还不如你写个类，将winpcap库封装到里面，暴露（导出）必要的经你简化的接口（函数）。[/quote]  引用 3 楼 zhao4zhong1 的回复:[quote=引用 2 楼 qq554006164 的回复:] [quote=引用 1 楼 zhao4zhong1 的回复:] 权限或UAC或防火墙或杀毒软件惹的祸。 推荐使用抓包软件wireshark 我想自己写个抓包类，生成DLL给C#调用[/quote] 还不如你写个类，将winpcap库封装到里面，暴露（导出）必要的经你简化的接口（函数）。[/quote]  我用了winpcap的方式进行抓包，但这种方式需要winpcap.dll文件，很多电脑都没有，而且这个还需要区分32和64位电脑，感觉不是很好[/quote] 请注意，wireshark软件底层也是依赖winpcap.dll的。 你如果有足够的自信你自己写的这个软件能超越wireshark或你自己写个实现抓包的dll能超越winpcap也行。 反正我是没有。 [/quote] 那我还是用winpcap这种吧，那我还有一个问题需要请教您一下，麻烦你耐心解答一下。 我现在使用这种方式，必须要安装WinPcap_4_1_3.exe才能使用，如果只是将winpcap.dll和Packet.dll拷贝到system32目录下，是不能使用的。我现在就是不想用安装的方式，能不能直接拷贝相关DLL？

user: user-1
content: 引用 5 楼 qq554006164 的回复:[quote=引用 3 楼 zhao4zhong1 的回复:] [quote=引用 2 楼 qq554006164 的回复:] [quote=引用 1 楼 zhao4zhong1 的回复:] 权限或UAC或防火墙或杀毒软件惹的祸。 推荐使用抓包软件wireshark 我想自己写个抓包类，生成DLL给C#调用[/quote] 还不如你写个类，将winpcap库封装到里面，暴露（导出）必要的经你简化的接口（函数）。[/quote]  引用 3 楼 zhao4zhong1 的回复:[quote=引用 2 楼 qq554006164 的回复:] [quote=引用 1 楼 zhao4zhong1 的回复:] 权限或UAC或防火墙或杀毒软件惹的祸。 推荐使用抓包软件wireshark 我想自己写个抓包类，生成DLL给C#调用[/quote] 还不如你写个类，将winpcap库封装到里面，暴露（导出）必要的经你简化的接口（函数）。[/quote]  我用了winpcap的方式进行抓包，但这种方式需要winpcap.dll文件，很多电脑都没有，而且这个还需要区分32和64位电脑，感觉不是很好[/quote] 请注意，wireshark软件底层也是依赖winpcap.dll的。 你如果有足够的自信你自己写的这个软件能超越wireshark或你自己写个实现抓包的dll能超越winpcap也行。 反正我是没有。

user: user-0
content: 引用 3 楼 zhao4zhong1 的回复:[quote=引用 2 楼 qq554006164 的回复:] [quote=引用 1 楼 zhao4zhong1 的回复:] 权限或UAC或防火墙或杀毒软件惹的祸。 推荐使用抓包软件wireshark 我想自己写个抓包类，生成DLL给C#调用[/quote] 还不如你写个类，将winpcap库封装到里面，暴露（导出）必要的经你简化的接口（函数）。[/quote]  引用 3 楼 zhao4zhong1 的回复:[quote=引用 2 楼 qq554006164 的回复:] [quote=引用 1 楼 zhao4zhong1 的回复:] 权限或UAC或防火墙或杀毒软件惹的祸。 推荐使用抓包软件wireshark 我想自己写个抓包类，生成DLL给C#调用[/quote] 还不如你写个类，将winpcap库封装到里面，暴露（导出）必要的经你简化的接口（函数）。[/quote]  我用了winpcap的方式进行抓包，但这种方式需要winpcap.dll文件，很多电脑都没有，而且这个还需要区分32和64位电脑，感觉不是很好

user: user-0
content: 引用 3 楼 zhao4zhong1 的回复:[quote=引用 2 楼 qq554006164 的回复:] [quote=引用 1 楼 zhao4zhong1 的回复:] 权限或UAC或防火墙或杀毒软件惹的祸。 推荐使用抓包软件wireshark 我想自己写个抓包类，生成DLL给C#调用[/quote] 还不如你写个类，将winpcap库封装到里面，暴露（导出）必要的经你简化的接口（函数）。[/quote]  谢谢指点，我尝试一下

user: user-1
content: 引用 2 楼 qq554006164 的回复:[quote=引用 1 楼 zhao4zhong1 的回复:] 权限或UAC或防火墙或杀毒软件惹的祸。 推荐使用抓包软件wireshark 我想自己写个抓包类，生成DLL给C#调用[/quote] 还不如你写个类，将winpcap库封装到里面，暴露（导出）必要的经你简化的接口（函数）。

user: user-0
content: 引用 1 楼 zhao4zhong1 的回复:权限或UAC或防火墙或杀毒软件惹的祸。 推荐使用抓包软件wireshark 我想自己写个抓包类，生成DLL给C#调用

user: user-1
content: 权限或UAC或防火墙或杀毒软件惹的祸。 推荐使用抓包软件wireshark