C语言 如何编写自定义api函数

xzjxylophone 2011-01-12 11:43:32
微软的其中一个api函数:CreateWindow
在winuser.h中如下定义:
#ifdef UNICODE
#define CreateWindow CreateWindowW
#else
#define CreateWindow CreateWindowA
#endif // !UNICODE

我现在想自己写一组api函数提供给别人用,别人无法看到我的源代码只能看到我的头文件中的函数声明,


我该如何实现这样的功能了?
...全文
865 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
bluesky12312388 2011-01-12
  • 打赏
  • 举报
回复
写成DLL
李亚超 2011-01-12
  • 打赏
  • 举报
回复
动态或者是静态链接库
大石头1987 2011-01-12
  • 打赏
  • 举报
回复
dll lib
mmidd 2011-01-12
  • 打赏
  • 举报
回复
写成函数库编译成dll或者lib文件
最简单的,写个 xxx.h 与 xxx.cpp加入到别人的工程里使用
jixingzhong 2011-01-12
  • 打赏
  • 举报
回复
写成lib,或者编译成dll提供即可。
ls251544415 2011-01-12
  • 打赏
  • 举报
回复
LZ还没理解API的含义吧

API是一些预先定义的函数,提供给应用程序与操作系统的接口,目的是提供应用程序与开发人员基于某软件或硬件的以访问一组例程的能力

换句话说就是由操作系统提供,而非用户自己编写出来的

根据LZ的想法,最多就是将API函数嵌套在你自己的函数里面,或用类将其封装
lich189 2011-01-12
  • 打赏
  • 举报
回复

貌似动态库好些
gladstonejay 2011-01-12
  • 打赏
  • 举报
回复
推荐动态库吧 静态库还是很慢的
ningto.com 2011-01-12
  • 打赏
  • 举报
回复
静态库, 动态库...
mnbqwe1 2011-01-12
  • 打赏
  • 举报
回复
那就只有封装成库了
乐CC 2011-01-12
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 jixingzhong 的回复:]
写成lib,或者编译成dll提供即可。
[/Quote]
++
要不就静态,要不就动态链接库
在PSIM(电力系统交互式模拟器)中,用户可以通过编写自定义C语言代码来扩展仿真功能,并将其封装为动态链接库(DLL)供PSIM调用。以下是生产PSIM DLL的一般步骤: 编写C源代码: 根据PSIM提供的接口规范,编写C语言代码实现所需的模块、模型或控制算法。 创建DLL项目: 使用Visual Studio等集成开发环境创建一个新的Win32 DLL项目。 包含PSIM头文件: 在你的C源文件中包含PSIM提供的头文件,这些文件包含了PSIM API函数的声明和数据结构定义。 实现PSIM接口函数: 实现PSIM要求的入口函数和其他必需的回调函数,例如psim_init(), psim_update() 和 psim_term() 等,这些函数会在仿真过程中被PSIM调用以执行用户自定义的逻辑。 编译生成DLL文件: 设置项目的属性,确保目标平台与PSIM兼容,并将输出类型设置为动态链接库(DLL)。 编译并链接项目,生成.dll文件和可能需要的.lib导入库文件。 配置PSIM模型: 在PSIM环境中,创建一个自定义元件或模型,指定该模型使用你刚刚生成的DLL。 提供必要的参数设置以及连接到仿真电路中的方式。 验证和调试: 运行PSIM仿真,观察并调试自定义模型的行为,确保其按照预期工作。 请注意,具体的实现细节可能会因PSIM的不同版本而有所差异,建议查阅最新的PSIM用户手册或API文档以获取具体指导。

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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