怎么样合并两个程序?

yunfeng7854 2015-03-05 11:28:40
目前我有一个程序完成了一项功能,通过另一个后台程序调用了这个程序,有什么办法可以把两个程序合成一个程序进行发布吗?也就是隐藏第一个程序的存在。
是不是要想办法把第一个程序的二进制文件加入到后台程序,同时让后台程序定位第一个程序的入口位置?
有没有什么合适的方法?或者提供一些参考知识。

非常感谢。
...全文
312 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
foxavideo 2015-03-09
  • 打赏
  • 举报
回复
将多个文件制作成一个文件,然后在用户执行这个文件的时候,先将所有文件置换出来到一个临时目录,然后去调用你什么a, b , c 什么的,更多信息请参看: http://www.itye.org/archives/1606
我爱你我的菜 2015-03-06
  • 打赏
  • 举报
回复
一个做成库,另一个调用这个库,编译后的可执行不就是一个了
yunfeng7854 2015-03-06
  • 打赏
  • 举报
回复
引用 12 楼 wangzuxi 的回复:
试试这个工具:Setup Factory
我知道这个想法,和我想的还是不一个东西。 Setup Factory是把程序文件打包,进行安装后在某个目录存放所有的程序文件,我希望的是不出现所有的程序文件。 在执行的时候也只有一个文件。 请指教,谢谢
yunfeng7854 2015-03-06
  • 打赏
  • 举报
回复
引用 11 楼 my_live_123 的回复:
[quote=引用 9 楼 yunfeng7854 的回复:] [quote=引用 8 楼 my_live_123 的回复:] [quote=引用 5 楼 yunfeng7854 的回复:] [quote=引用 4 楼 my_live_123 的回复:] 一个做成动态库,一个正常程序调用它
这样子只有一个程序在执行,我的目的是./a还是一个独立的程序,./b程序创建进程(线程)执行它。 需要多线程执行几个程序。[/quote] 似乎有点像本地服务器和客户的关系,但是又不像! 如果是一个进程的执行过程中需要执行另外一个程序,可以用fork+exec方式进行!然后让父进程等待子进程的结束,是你需要的工作方式吗?[/quote] 是这个工作方式,但是希望最终只出现一个程序文件,把被fork调用的程序合并进来[/quote] 是在一个程序文件中啊! if(fork == 0) { //child执行另外一段程序 } else { //它爹继续 }[/quote] ./b文件的内容就是这样的,child程序也就是./a程序。 目标是不出现./a程序和./b程序,只有一个./c程序,执行效果和./a程序、./b程序的效果一样。 不知道能不能在内存中把./c程序分割成./a和./b两个程序,然后进行定位。
yunfeng7854 2015-03-05
  • 打赏
  • 举报
回复
引用 4 楼 my_live_123 的回复:
一个做成动态库,一个正常程序调用它
或者把两个文件合成一个文件,然后在内存中把它们分开,然后分别执行也可以。 不了解这样做可不可行
yunfeng7854 2015-03-05
  • 打赏
  • 举报
回复
引用 3 楼 zhxianbin 的回复:
这不行吧,a b 合并都不行吧
有没有类似upx加壳的方式,需要调用./a的时候就把入口点定位到./a二进制代码的开始位置。 我对这块不太懂,请指点。
yunfeng7854 2015-03-05
  • 打赏
  • 举报
回复
引用 4 楼 my_live_123 的回复:
一个做成动态库,一个正常程序调用它
这样子只有一个程序在执行,我的目的是./a还是一个独立的程序,./b程序创建进程(线程)执行它。 需要多线程执行几个程序。
一根烂笔头 2015-03-05
  • 打赏
  • 举报
回复
一个做成动态库,一个正常程序调用它
zhxianbin 2015-03-05
  • 打赏
  • 举报
回复
这不行吧,a b 合并都不行吧
yunfeng7854 2015-03-05
  • 打赏
  • 举报
回复
引用 1 楼 zhxianbin 的回复:
对于发布不就是文件嘛!和第二个程序放同一个文件夹
是要合并成为一个程序文件 比如两个程序 ./a ./b,./b 需要创建一个进程执行./a 合并成一个./c:先执行./b,在./b调用./a时,在执行./a。 大概就是这个意思
zhxianbin 2015-03-05
  • 打赏
  • 举报
回复
对于发布不就是文件嘛!和第二个程序放同一个文件夹
zuxi 2015-03-05
  • 打赏
  • 举报
回复
试试这个工具:Setup Factory
一根烂笔头 2015-03-05
  • 打赏
  • 举报
回复
引用 9 楼 yunfeng7854 的回复:
[quote=引用 8 楼 my_live_123 的回复:] [quote=引用 5 楼 yunfeng7854 的回复:] [quote=引用 4 楼 my_live_123 的回复:] 一个做成动态库,一个正常程序调用它
这样子只有一个程序在执行,我的目的是./a还是一个独立的程序,./b程序创建进程(线程)执行它。 需要多线程执行几个程序。[/quote] 似乎有点像本地服务器和客户的关系,但是又不像! 如果是一个进程的执行过程中需要执行另外一个程序,可以用fork+exec方式进行!然后让父进程等待子进程的结束,是你需要的工作方式吗?[/quote] 是这个工作方式,但是希望最终只出现一个程序文件,把被fork调用的程序合并进来[/quote] 是在一个程序文件中啊! if(fork == 0) { //child执行另外一段程序 } else { //它爹继续 }
zhxianbin 2015-03-05
  • 打赏
  • 举报
回复
引用 6 楼 yunfeng7854 的回复:
[quote=引用 3 楼 zhxianbin 的回复:] 这不行吧,a b 合并都不行吧
有没有类似upx加壳的方式,需要调用./a的时候就把入口点定位到./a二进制代码的开始位置。 我对这块不太懂,请指点。[/quote] 这个也不懂
yunfeng7854 2015-03-05
  • 打赏
  • 举报
回复
引用 8 楼 my_live_123 的回复:
[quote=引用 5 楼 yunfeng7854 的回复:] [quote=引用 4 楼 my_live_123 的回复:] 一个做成动态库,一个正常程序调用它
这样子只有一个程序在执行,我的目的是./a还是一个独立的程序,./b程序创建进程(线程)执行它。 需要多线程执行几个程序。[/quote] 似乎有点像本地服务器和客户的关系,但是又不像! 如果是一个进程的执行过程中需要执行另外一个程序,可以用fork+exec方式进行!然后让父进程等待子进程的结束,是你需要的工作方式吗?[/quote] 是这个工作方式,但是希望最终只出现一个程序文件,把被fork调用的程序合并进来
一根烂笔头 2015-03-05
  • 打赏
  • 举报
回复
引用 5 楼 yunfeng7854 的回复:
[quote=引用 4 楼 my_live_123 的回复:] 一个做成动态库,一个正常程序调用它
这样子只有一个程序在执行,我的目的是./a还是一个独立的程序,./b程序创建进程(线程)执行它。 需要多线程执行几个程序。[/quote] 似乎有点像本地服务器和客户的关系,但是又不像! 如果是一个进程的执行过程中需要执行另外一个程序,可以用fork+exec方式进行!然后让父进程等待子进程的结束,是你需要的工作方式吗?
【为什么学习微信小程序?】   小程序开发为当下一种主流的开发形式,小程序开发已经不仅仅局限于互联网行业,传统行业同样也有海量的需求,掌握小程序开发不仅仅是掌握了一个新的开发技能,更可以增加大家的行业竞争力,无论是在岗位的提升,求职面试、或者个人创业都是有很大的帮助。掌握了小程序开发小程序也是一门相对比较容易上手的技术,因为小程序开发容纳了前端、后端、运维等岗位所需掌握的知识但又极为简单好理解,对于刚刚入门或者小白用户是一个可以快速掌握并成为一名程序猿的不二途径。 【推荐你学习这门课程的四大亮点】 1、完整成体系的小程序开发知识: 对于没有学习过小程序开发的同学,本课程由浅入深系统的向同学们讲解了小程序开发知识,将知识点串联起来,让同学们可以更好更快的掌握小程序开发。2、视频及相关功能开发的掌握: 借助于小程序开发使得视频方向的开发变的尤为简单,即使你是入门小白也可以熟练掌握小程序中视频的相关开发,其中涉及了视频的常规控制如播放暂停等也有比较流行的视频弹幕功能,并结合了一下视频开发中相关的性能优化问题,可以让同学们通过本课程的学习对于视频类的开发有更深层次的认识。3、打造智能闲聊小程序: 借助于网络上开放的人工智能接口,去实现智能闲聊功能,使得开发的过程不仅能够收获更多的知识也变得更加有趣。项目中虽然知识讲解了智能闲聊功能的调用,但是通过此功能的调用方法大家可以举一反三去使用更多的开发功能使得开发变得简单且有趣。4、掌握项目级开发知识及技巧: 本课程中融入了两大当前比较主流的项目实例,视频功能和人工智能。通过项目的练习不仅可以让大家掌握较为主流的项目方向且融入很多的中高级语法及项目开发知识,如ES6+的一些语法和模块化、组件化开发的知识。【课程内容设计】   设计本门课程时考虑到很多同学可能没有小程序开发相关经验,本门课程将由浅入深,渐进式的讲解知识点。我把课程分为了三个阶段分别为:初次接触、基础入门、实战提升。   1、初次接触:   主要给大家讲解小程序开发的相关知识,让大家在宏观上对向程序开发能有一定的概念。并且讲授的开发环境的搭建让大家对在开发前期做一个充分的热身。先激发起大家对线程序开发的热情,这样为下一步小程序的开发学习做一个铺垫。   2、基础入门:   这个阶段主要为入门的同学提供了一个比较全面的小程序开发基础知识知识汇总,并伴有实践的例子简单且易上手,让大家能够体验到小程序的开发乐趣,并未下一步的项目实战开发打定基础。   3、实战提升:   这个阶段为项目实践阶段,通过实战项目让大家深入了解和学习小程序开发,项目中同时融入了现在主流的视频内容,和有趣并贴近生活的智能闲聊功能,项目中涉及到的技术点也是由浅入深,同学们在掌握小程序的开发能力的同时也掌握了问题解决与深入学习的能力。 【实战项目展示】 【学习完课程你将收获】

23,121

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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