免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: liuaiping0205
打印 上一主题 下一主题

[C] 一个main程序如何调用另一个main [复制链接]

论坛徽章:
0
21 [报告]
发表于 2012-12-27 12:51 |只看该作者
谢谢各位的回复,根据上面的回答,大致是3个方法:system、fork后execv、做动态库后dlopen。感兴趣的可以都试一下!!

论坛徽章:
0
22 [报告]
发表于 2012-12-27 16:04 |只看该作者
回复 21# liuaiping0205


你强调过不是一个程序中运行另一个程序,而是函数调用。 这样看的话只有动态库的方式才是真正的函数调用。

论坛徽章:
1
丑牛
日期:2013-09-29 19:04:50
23 [报告]
发表于 2012-12-27 17:57 |只看该作者
sardinescn 发表于 2012-12-27 16:04
回复 21# liuaiping0205


动态库能够允许函数两个定义吗?

论坛徽章:
0
24 [报告]
发表于 2012-12-28 10:41 |只看该作者
回复 23# solu
如果不是在同一个动态库里面可以

   

论坛徽章:
0
25 [报告]
发表于 2012-12-28 20:53 |只看该作者
回复 1# liuaiping0205


    第二段代码修改成:

#include <stdio.h>

#define main func1
int
main (int argc,char *argv[])
#undef main
{
        printf ("argc = %d,argvi[] = %s\n",argv[0]);
        
        return 0;
}

论坛徽章:
0
26 [报告]
发表于 2012-12-28 21:15 |只看该作者
dlopen,dlsym。看一下《黑客调试技术解密》这本书吧。代码的自我调试,自我加载,自我加解密,自我复制,这些东西在这本书都讲到,而且讲得很好。当然,相信这些东西很多人都没听过。

论坛徽章:
0
27 [报告]
发表于 2012-12-31 12:54 |只看该作者
liuaiping0205 发表于 2012-12-26 20:34
回复 6# Sevk
这个应该也行,只是这种方式好像很少见吧,把main函数作为dlsym的参数??


在很多地方都可以看到

论坛徽章:
0
28 [报告]
发表于 2012-12-31 13:02 |只看该作者
einsnabuck 发表于 2012-12-28 21:15
dlopen,dlsym。看一下《黑客调试技术解密》这本书吧。代码的自我调试,自我加载,自我加解密,自我复制,这 ...

是这本吗?http://product.dangdang.com/main/product.aspx?product_id=9195588
质量,翻译的如何?

论坛徽章:
0
29 [报告]
发表于 2012-12-31 15:56 |只看该作者
testh 发表于 2012-12-31 13:02
是这本吗?http://product.dangdang.com/main/product.aspx?product_id=9195588
质量,翻译的如何?

质量翻译得不错。这是一本奇书。我看它之前,解决coredump问题速度一天两个,看了它之后,一个coredump问题一般20分钟就可以解决了。

论坛徽章:
0
30 [报告]
发表于 2013-01-06 13:44 |只看该作者
回复 29# einsnabuck


    你是下载的pdf还是买的纸质的?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP