社区
C语言
帖子详情
C语言编写dll文件(急急急 ,在线等)
lawrendc
2011-01-12 09:32:33
hi,我想将C语言的程序编写成可供其他语言调用的dll文件,在其他语言环境里只需要声明下就可以调用。另外问句,C语言里可以执行rundll32.exe 打开图片浏览程序的吗?谢谢
...全文
419
15
打赏
收藏
C语言编写dll文件(急急急 ,在线等)
hi,我想将C语言的程序编写成可供其他语言调用的dll文件,在其他语言环境里只需要声明下就可以调用。另外问句,C语言里可以执行rundll32.exe 打开图片浏览程序的吗?谢谢
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
ls251544415
2011-01-12
打赏
举报
回复
2005没试过,我是从VS2008开始用的,现在使用的是VS2010
写纯C代码的配置方法如下:
1.建立一个c++项目,将打开项目属性
2." 配置属性 "
3." C/C++ "
4." 高级 "
5." 编译为 " 选择 "默认值" 或 "编译为 C 代码 (/TC)"
6.将新建的*.cpp文件改成*.c文件
注意:第6中
选"默认值"时,表示:编译环境有代码文件决定(.cpp决定C++,.c决定C)【.cpp或.c都可以是作为代码文件】
选"编译为 C 代码 (/TC)"时,编译环境当然就是C啦【只允许.c作为代码文件】
2005没试过,LZ试试,微软的产品都是向上兼容的,应该八九不离十吧
lawrendc
2011-01-12
打赏
举报
回复
[Quote=引用 11 楼 ls251544415 的回复:]
用微软的VS啊,很好很强大
[/Quote]
VS 2005 里可以编C语言的?我怎么只看到C++
ls251544415
2011-01-12
打赏
举报
回复
用微软的VS啊,很好很强大
lawrendc
2011-01-12
打赏
举报
回复
[Quote=引用 1 楼 ls251544415 的回复:]
LZ用的什么开发工具?
[/Quote]
大家通常都用什么开发工具的? 我就临时需要写个简单的dll供mapbasic调用
lawrendc
2011-01-12
打赏
举报
回复
[Quote=引用 8 楼 smartlean 的回复:]
http://neye.blog.hexun.com/380387_d.html
这个可以有~
[/Quote]
谢谢 先看看
smartlean
2011-01-12
打赏
举报
回复
http://neye.blog.hexun.com/380387_d.html
这个可以有~
lawrendc
2011-01-12
打赏
举报
回复
谢谢各位 ,完了 C好多都看不懂了
lhy
2011-01-12
打赏
举报
回复
找个合适的编译器,然后开始写代码。
jues
2011-01-12
打赏
举报
回复
/* jues.h */
/*
// (C/C++调用)
#include "jues.h"
#pragma comment(lib,"jues.lib")
//////////////////////////////////////////////////////////////////////////////////
// (VB调用)
Private Declare Sub <函数名> Lib "jues.dll" <(参数)>
//下面是调用jues_Call的一个例子
Private Declare Sub jues_Call Lib "jues.dll" (ByVal a As String)
Private Sub Command1_Click()
jues_Call ("explorer.exe")
End Sub
//多线程调用
Private Declare Sub jues_Thread Lib "jues.dll" (ByVal p_address As Long) '函数名( 如果有参数的话可以用 ByVala As String )
Private Sub Command1_Click()
jues_Thread AddressOf aa 'AddressOf是取址符
End Sub
*/
#include < stdio.h > //标准c
#include <windows.h> //windows
#include <assert.h> //调试
#include<winsock.h> //网络
#include <tlhelp32.h> //进程
#include <shlobj.h>
#ifndef CSIDL_PROGRAM_FILES
#define CSIDL_PROGRAM_FILES 0x0026
#endif
#ifndef LIB_H
#define LIB_H
#ifdef __cplusplus
extern "C" {
#endif
/**** some declaration or so *****/
#define H_JUES_DLL_VIEW "jues(小幽) 的日常笔记,联系方式\nEmail: jue_s@live.cn"
#define H_EXPORT_D __declspec(dllexport) int __stdcall
#define H_EXPORT_B __declspec(dllexport) BOOL __stdcall
#define H_EXPORT_V __declspec(dllexport) void __stdcall
#define H_EXPORT __declspec(dllexport)
#define H_FREE_DISK_SIZE 1
#define H_ALL_DISK_SIZE 0
#define H_DATE_PATH "\\_________jues__________"
struct o_call_shell
{
BOOL b_one;
char c_path[ 256 ];
char cmd_line[ 256 ];
};
struct o_jues_sz //字符串
{
char c_sz[ 256 ];
};
BOOL jues_system_App_folder( char c_path[ 256 ] ); /*获取系统软件安装目录*/
BOOL APIENTRY DllMain( HANDLE hModule, DWORD ul_reason_for_call,LPVOID lpReserved);/* dll入口函数 */
//BOOL __b_jues_share_data;// TRUE 为关闭( 默认开启 ); //是否开否进程间数据同步
/* 14:53 2010-12-62 */
H_EXPORT_V jues_shell( const char *p_c_path, const char *p_cmd_line,const int d_shell_type);/*运行一个进程
( *p_c_path 进程模块路径,*p_cmd_line 进程的命令行,
d_shell_type 运行在类型
1( WinLogon 方式,如后台运行 )
2( Default 正常交互 )
3( Screen saver 系统空闲的时候,运行屏保的桌面. )
)
*/
]//................这里太多了就不写了
#ifdef __cplusplus
}
[color=#FF0000]
]#endif /* end of __cplusplus */
#endif
[/color
yiruirui0507
2011-01-12
打赏
举报
回复
http://www.blogjava.net/wxb_nudt/archive/2007/09/11/144371.html
收藏的文章,分享给楼主!!!
bdmh
2011-01-12
打赏
举报
回复
写标准windows的dll,那样可以供其他程序方便的调用
乐CC
2011-01-12
打赏
举报
回复
这个...
你想写DLL,建议你去看“动态链接库”的书籍,孙鑫老师的书里也写的很详细
至于你想在C中运行其他程序,可以启动进程来完成,也可以调用批处理,都可以
ls251544415
2011-01-12
打赏
举报
回复
LZ用的什么开发工具?
the_venus
2011-01-12
打赏
举报
回复
你找一下有一本书叫《windows动态链接库编程》,里面对动态链接库的知识讲得很细的,相信对你一定有用的。书不厚,几十页吧,我记得,还是很精典的。
wangchensong
2011-01-12
打赏
举报
回复
你可以call 就是用dos的命令 在
c中就是 system("call ......");
应该是 你百度一下吧
Network Thread
怎样让控制台程序也能...VC中使用IXMLHTTPRequest获取URL信息的问题,有代码*********************************************如何通过IXMLHTTPRequest下载
文件
?300分请教如何向DNS查询MX记录(SDK+socket)那位仁兄有在
一个C++程序员的学习经历
正在上网的时候有这个念头的,所以
急
急
忙忙找了一些学习编程的高人的感想: 我开始学VC时就是自己一个人在啃,也没什么人指导,当时没有条件上网,资料特别少,在书店里随便买本书就学了,在学VC的过程中走了许多...
c++路线
正在上网的时候有这个念头的,所以
急
急
忙忙找了一些学习编程的高人的感想: 我开始学VC时就是自己一个人在啃,也没什么人指导,当时没有条件上网,资料特别少,在书店里随便买本书就学了,在学VC的过程中走了许多...
技术
I/O操作不仅包括了直接的
文件
、网络的读写,还包括数据库操作、Web Service、HttpRequest以及.net Remoting等跨进程的调用。而线程的适用范围则是那种需要长时间CPU运算的场合,例如耗时较长的图形处理和算法执行。...
WEB开发文档2 总结
http://blog.donews.com/lvjiyong/archive/2006/06/29/931071.aspx怎样将后台生成的在内存中的图象显示到客户端Microsoft IE WebControls下载...显示数据下载中文名
文件
时保存
文件
名乱码问题关于用ASP.net绘图的问题...
C语言
70,020
社区成员
243,263
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章