社区
进程/线程/DLL
帖子详情
win32动态连接库传递参数的问题
djhdu
2004-06-28 04:39:57
我创建了一个win32 Dynamic Link Library 工程,用c语言的方式export接口函数
extern "C" __declspec(dllexport) 函数类型 __cdecl 函数名(参数);
问题:
我现在想把一个文本文件的全部内容传入到函数里面去,想用char *类型,但是如果文件有很多行的话,是不是传递的大小有限制啊,或者还有没有其它方法,一次性的把文件内容传入到dll中?
...全文
127
9
打赏
收藏
win32动态连接库传递参数的问题
我创建了一个win32 Dynamic Link Library 工程,用c语言的方式export接口函数 extern "C" __declspec(dllexport) 函数类型 __cdecl 函数名(参数); 问题: 我现在想把一个文本文件的全部内容传入到函数里面去,想用char *类型,但是如果文件有很多行的话,是不是传递的大小有限制啊,或者还有没有其它方法,一次性的把文件内容传入到dll中?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Zark
2004-06-29
打赏
举报
回复
1.不存在内容太长的问题,除非你在读文件的时候就已有问题了.
2.按行处理,使用strtok函数.
fire_up
2004-06-28
打赏
举报
回复
传指针嘛,另传个long型参数传递字符串长度。
djhdu
2004-06-28
打赏
举报
回复
可能说得不够清楚,我现在主要是在把文件读入到内存中,然后调用dll处理,只是把内存中的内容传入到dll中,我想用char 类型来传递,我现在有两个问题,1是内容太长,会不会超出限制,2是我传入以后,在dll中如何能够比较方便的按行分离字符串,然后处理一行字符串?
ANewGuy
2004-06-28
打赏
举报
回复
赞同 lianglp() 的意见,最好是传句柄。
其实最好是把文件操作放到dll中操作,不要传来传去的。
快乐鹦鹉
2004-06-28
打赏
举报
回复
把文件路径传递进去多好啊
3jaja
2004-06-28
打赏
举报
回复
我现在想把一个文本文件的全部内容传入到函数里面去,想用char *类型,但是如果文件有很多行的话,是不是传递的大小有限制啊,或者还有没有其它方法,一次性的把文件内容传入到dll中?
用char *类型没有限制。char *仅4个字节而已。
fbmsf
2004-06-28
打赏
举报
回复
串句柄吧。
lianglp
2004-06-28
打赏
举报
回复
HANDLE hFile = CreateFileMapping(...) ;//把文件作映像用。
LPVOID pBuffer = ::MapViewOfFile(hFile,...) ;//得到文件开始地址。
把上面的pBuffer传递到DLL接口中就可以了
qwertasdfg123
2004-06-28
打赏
举报
回复
跟内存有关。
因为dll是一个单独的进程,如果把数据指针给它,系统会把指针指向的内存连通指针一起拷贝到dll的进程空间中。
MFC
动态
链接
库
和
WIN32
动态
链接
库
及区别
(1)DLL的构成 每个应用程序都有一个入口函数WinMain,而每个DLL也有一个入口函数DllMain。DLL跟应用程序一样都含有资源、数据段和代码段。DLL跟应用程序的差别主要是DLL有符号输入表和符号输出表,以方便应用程序调用DLL中的函数。 因为DLL是由应用程序加载的,所以它本身没有虚拟的内存地址空间,它使用的是加载它的应用程序的地址空间。这种加载分为隐式和显式两种...
MFC
动态
链接
库
和
WIN32
动态
链接
库
(1)DLL的构成 每个应用程序都有一个入口函数WinMain,而每个DLL也有一个入口函数DllMain。DLL跟应用程序一样都含有资源、数据段和代码段。DLL跟应用程序的差别主要是DLL有符号输入表和符号输出表,以方便应用程序调用DLL中的函数。 因为DLL是由应用程序加载的,所以它本身没有虚拟的内存地址空间,它使用的是加载它的应用程序的地址空间。这种加载分为隐式和显式两种方式。将在后面叙述。(2)创建MFC DLL A,VC6新建一个工程MFCDLL,类型为MFC Ap
C#调用
Win32
C++
动态
链接
库
那些事
利用C#设计前端显示界面,C++完成后台算法和功能,是现在比较流行的一种桌面软件研发搭配。通常的做法就是C++封装成
动态
链接
库
接口,供C#来调用。这种做法最麻烦的是两者之间数据传递的
问题
,因为C#和C++之间的数据类型是不一样的,而且在实际应用中还存在一些未知的坑。
动态
链接
库
(VC_
Win32
)
动态
链接概述 说明 所谓
动态
链接,就是把一些经常会共用的代码(静态链接的OBJ程序
库
)制作成DLL档,当可执行文件调用到DLL档内的函数时,windows操作系统才会把DLL档加载存储器内,DLL档本身的结构就是可执行文件,当程序需求函数才进行链接.通过
动态
链接方式,存储器浪费的情形将可大幅降低. DLL的文档格式与视窗EXE文档一样——也就是说,等同于32位视窗的可移植执行文档(PE
动态
链接
库
全面浅析(一)-----
Win32
动态
链接
库
言前:由于最近复习了下
动态
链接
库
,所以决定写一个
动态
链接
库
专题。
动态
链接
库
网上各种达人已近写过很多了,资料也是一大把一大把的。但是我还是想写一份,因为网上讲的都很分散,讲的不是很系统,而且很多
问题
没有深究。因此我自己还是写一份吧,因为说明了是浅析。所以说我不可能讲的太深入,但是本
进程/线程/DLL
15,473
社区成员
49,171
社区内容
发帖
与我相关
我的任务
进程/线程/DLL
VC/MFC 进程/线程/DLL
复制链接
扫一扫
分享
社区描述
VC/MFC 进程/线程/DLL
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章