本文将分享如何从Golang创建可执行文件,该可执行文件在运行时不会打开控制台窗口?的详细内容,此外,我们还将为大家带来关于c–修改自身的正在运行的可执行文件、c#–在运行时创建可执行文件、C++在一
本文将分享如何从Golang创建可执行文件,该可执行文件在运行时不会打开控制台窗口?的详细内容,此外,我们还将为大家带来关于c – 修改自身的正在运行的可执行文件、c# – 在运行时创建可执行文件、C++ 在一个可执行文件中从另一个可执行文件共享内存和调用函数?、c++可执行文件 管道 python 管道 c++可执行文件的相关知识,希望对你有所帮助。
本文目录一览:- 如何从Golang创建可执行文件,该可执行文件在运行时不会打开控制台窗口?
- c – 修改自身的正在运行的可执行文件
- c# – 在运行时创建可执行文件
- C++ 在一个可执行文件中从另一个可执行文件共享内存和调用函数?
- c++可执行文件 管道 python 管道 c++可执行文件
如何从Golang创建可执行文件,该可执行文件在运行时不会打开控制台窗口?
我创建了一个要在后台隐形运行的应用程序(无控制台)。我该怎么做呢?
(这是针对Windows,在Windows 7 Pro 64位上测试的)
答案1
小编典典在网上找到的文档说,我可以按照以下方式进行编译,
go build -ldflags -Hwindowsgui filename.go
但这给出了一个错误: unknown flag -Hwindowsgui
对于较新的(1.1?)版本的编译器,这应该可以工作:
go build -ldflags -H=windowsgui filename.go
当我继续搜索时,我发现应该尽快更新官方文档,但是与此同时,还有很多较旧的示例回答了该错误。
c – 修改自身的正在运行的可执行文件
具体来说,我希望能够读取/写入exe文件本身存储的一些数据.我不需要(或希望)修改可执行代码.
在常规窗口中,我可以使用字符串资源和UpdateResource函数,但在WinCE中不存在.
遗憾的是,CreateFile因文件已被使用而失败.
有人有任何其他建议吗?
解决方法
我对Windows-CE并不是特别熟悉,但是如果需要,你可以复制文件,编辑副本,删除第一个,然后运行另一个.这是一种效率低下的方法,但是如果你只需要在程序范围内执行一次或两次并且速度不是问题,我想你可以这样做:
#include <iostream> #include <fstream> #include <string> using namespace std; int main(int argc,char * argv[]) { // Check if this IS the copy: if (argv[0].find(argv[1]) != string::npos) { system("taskkill -IM myOLDfile.exe"); // Stop the old one running,system("del myOLDfile.exe"); // Then delete it. } ifstream myself(argv[0]); // argv[0] is the program itself string fullcode; string line; if (file.is_open()) { while (file.good()) { getline(myself,line); line.append("\n"); fullcode.append(line); } } myself.close(); // Do whatever you need to do to the code here. ofstream newcode("myNEWfile.exe"); newcode.write(fullcode); newcode.close(); system("myNEWfile.exe myNEWfile.exe"); // Starts new file. Also,not a typo. }
祝你的项目好运!
c# – 在运行时创建可执行文件
说我有2个程序.每一个都包含一个类.我将使用一个程序来修改和填充数据类.第二个文件是一个程序,它也有类,但是空的,它的唯一目的是以特定的方式访问这些数据.我不知道,我在想是否序列化特定类,然后“注入”第二个文件.但是如何才能做到这一点呢?我发现修改已编译的文件很有吸引力,但我从来没有能够进行不会导致错误的更改.
这只是一个想法.我不知道解决方案会是什么,这只是让我想到的东西.
我更喜欢c或c中的一些跨平台信息.我接受的唯一其他语言是c#.
也
我不是在寻找第三方图书馆,或者像Boost这样的东西.如果有任何正确方向的推动可能是我所需要的.
也
我不想使用编译器.
Jalf实际上读了我写的内容
这正是我想知道该怎么做的.我认为上面提到的内容相当明显.我没有说过编译文件或编写脚本.
引用“我发现修改已经编译过的文件非常吸引人”
请在发布前先阅读并理解问题.
谢谢.
解决方法
生成自解压可执行文件的这些实用程序实际上并不是从头开始生成可执行文件.它们具有预生成的可执行文件,并且数据文件仅附加到它的末尾.由于Windows可执行格式允许您将数据放在文件的末尾,仅关注“真正的可执行文件”部分(exe标题告诉它有多大 – 其余部分被忽略).
例如,尝试生成两个自解压zip,并对它们执行二进制diff.你会看到他们的第一个X KB字节完全相同,其余的是什么变化,根本不是可执行文件,它只是数据.执行文件时,它会查看文件末尾的内容(数据)并将其解压缩.
看一下维基百科条目,转到外部链接部分深入挖掘:
http://en.wikipedia.org/wiki/Portable_Executable
我这里只提到了Windows,但同样的原则适用于Linux.但是不要指望有跨平台的结果,你必须重新实现它到每个平台.我无法想象比可执行文件更依赖平台的东西.即使您使用C#,您也必须生成本机存根,如果您在Windows(在.net下)或Linux(在Mono下)运行,则会有所不同.
C++ 在一个可执行文件中从另一个可执行文件共享内存和调用函数?
如何解决C++ 在一个可执行文件中从另一个可执行文件共享内存和调用函数??
这可能是一个基本问题,但我是 C++ 新手,我无法在网上找到答案,我想是因为我不知道该搜索什么。
对于我的项目,我有一个将使用 C++ 的数据结构,它本质上是一个非常大的 3D 模型,存储在内存中的大小为许多 GB。我编写了一个程序来存储和操作这个巨大的 3D 模型。
我希望第三方能够编写自己编译的可执行文件,这些文件链接到我自己的可执行文件中,并且可以直接调用其上的某些函数,例如渲染 3D 模型,而无需序列化数据并传递它来回。所以基本上我希望第三方可执行文件能够连接或链接到我的可执行文件,所以它们的操作有点像我的程序是一个库,它是该程序的一部分,即使它实际上是一个单独的运行进程。他们应该能够调用函数,甚至(如果允许)从我的进程访问内存(我可以传递对内存位置的引用,然后他们像自己一样使用该引用吗?)堆中的变量可以跨程序共享吗?一个进程中的函数可以被另一个正在运行的进程调用吗?
有意义吗? 我在哪里可以学习如何做到这一点?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)
c++可执行文件 管道 python 管道 c++可执行文件
在centos中使用管道进行参数的传输
运行格式 ./c++A | python3 p.py | ./c++B
python脚本中使用标准输入和输出 stdin 和 stdout,python脚本参数是传输不到./c++B可执行文件的。
python 脚本中要使用
while True:
line=input()
............
print(line)
不要写
for line in sys.stdin:
print(line)
本人没有学过python,具体什么原因也不清楚,有请python大佬们给个解释吧
关于如何从Golang创建可执行文件,该可执行文件在运行时不会打开控制台窗口?的介绍现已完结,谢谢您的耐心阅读,如果想了解更多关于c – 修改自身的正在运行的可执行文件、c# – 在运行时创建可执行文件、C++ 在一个可执行文件中从另一个可执行文件共享内存和调用函数?、c++可执行文件 管道 python 管道 c++可执行文件的相关知识,请在本站寻找。
本文标签: