今日分享: 使用py2exe将python程序打包成.exe可执行程序(未安装python运行环境的用户也可以运行该程序来实现远程发送邮件控制设备的关机与重启) 一、py2exe为一款python程序打包工具 程序】,设定该安装引导python程序名为:email_package.py,需要打包的python程序为:sendEmail.py【该文件内容请见推文:py2exe实现Python文件打包为.exe可执行程序 ; (2)、查看已打包好的sendEmail.py程序 在目录C:\Python27\dist目录下,可查看到sendEmail.exe可执行程序(打包好的程序) 双击可执行该程序,运行状态如下截图所示 : 四、基于上面sendEmail.exe程序启动后,发送邮件 发送一封邮件标题为:shutdown或restart的邮件至新浪邮箱,即推文:"py2exe实现Python文件打包为.exe可执行程序 程序每隔2秒会自动去读取该邮箱中的最新一封邮件,如果该邮件的标题为:shutdown或restart时,则会相对应的执行运行该.exe程序物理机器的关机与重启操作,否则:该.exe程序不会做任何操作,休眠
IDEA 导出可执行的Jar 换了Idea后今天需要把项目打成 jar放到服务器上运行,稍微整理一下。 的菜单中选择File–>Project Structure,如下图所示: 选择“Artifacts“在出现的图中点击加号 在如下的图形中需要注意两个地方: 1) 需要选择jar包默认运行的入口类 2) 使用如下运行即可: java -jar mqproducer.jar 如果入口类需要参数只需要在命令后面加参数以空格分割即可,如: java -jar mqproducer.jar args0 args1 args2 2. 发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/185771.html原文链接:https://javaforall.cn
今天给大家分享的内容为: Python程序实现发送、读取邮件来控制电脑的关机与重启(作为py2exe打包成.exe可执行程序的基础文件) 一、代码实现 说明:本文介绍的是使用新浪邮箱作为例子进行讲解,代码实现如下 一般来说,登录使用SMTP,接收使用POP""" class Mail(): """使用python程序远程控制电脑关机或重启""" def sendMail(self): 具体实现代码如上述代码所示,请仔细阅读; def reflash(self): 重置最新一封邮件的标题方法说明: (1)、重置的目的:是为覆盖之前发送那一封邮件的标题内容,以免影响程序的正常运行 并休眠2秒后再次进行读取最 新一封邮件,如此循环往复; (3)、执行设备对象为:正在运行该程序的物理机器; 三、特别说明 1、该python文件需要导入的包模块,需自行先安装; 2、该程序可在python2 和python3环境下运行,此处代码是在python2环境下编写的,如果需要移植到python3环境下,需修改相应的语法; 3、后期内容将会讲解如何将该python程序使用py2exe打包成.exe可执行程序
今天给大家分享的内容为:使用py2exe将python程序打包成.exe可执行程序(未安装python运行环境的用户也可以运行该程序来实现远程发送邮件控制设备的关机与重启) 一、py2exe为一款python :【安装引导python程序】,设定该安装引导python程序名为:email_package.py,需要打包的python程序为:sendEmail.py【该文件内容请见推文:py2exe实现python 文件打包为.exe可执行程序(上篇)】 2、email_package.py文件内容如下: 注意点: (1)、该文件内容中不能出现中文; (2)、email_package.py和sendEmail.py 无报错提示则说明该程序打包成功; (2)、查看已打包好的sendEmail.py程序 在目录C:\Python27\dist目录下,可查看到sendEmail.exe可执行程序(打包好的程序) 双击可执行该程序 可执行程序(上篇)"中def readMail(self):方法中登录的邮箱。
关于PS2EXE PS2EXE是一个可以将PowerShell脚本编译为可执行程序的模块,在GUI和Ingo Karstein脚本的支持下,该模块能够生成真正的Windows可执行程序。 注意事项 有一些人可能会滥用PS2EXE来编译他的计算机病毒脚本,因此越来越多的病毒扫描程序会将使用PS2EXE创建的程序识别为恶意程序并将其删除。因此,希望大家不要将其用于恶意目的。 \target.exe 或 ps2exe .\source.ps1 .\target.exe 上述命令会将“source.ps1”编译成可执行程序target.exe,如果命令参数中忽略了“. 位或64位代码 lcid = 编译可执行程序的位置ID STA或MTA = 单线程模式或多线程模式 noConsole = 生成的可执行文件为Windows应用程序,不带终端窗口 UNICODEEncoding ,不带标准输出 noError = 生成可执行文件,不带错误输出 noVisualStyles = 禁用Windows GUI应用程序的可视化风格 requireAdmin = 如果启用的UAC,
今天给大家分享的内容为:python程序实现发送、读取邮件来控制电脑的关机与重启(作为py2exe打包成.exe可执行程序的基础文件) 一、说明:本文介绍的是使用新浪邮箱作为例子进行讲解,代码实现如下: 一般来说,登录使用SMTP,接收使用POP""" class Mail(): """使用python程序远程控制电脑关机或重启""" def sendMail(self): ,拼接字符串等操作,具体实现代码如上述代码所示,请仔细阅读; def reflash(self): 重置最新一封邮件的标题方法说明: (1)、重置的目的:是为覆盖之前发送那一封邮件的标题内容,以免影响程序的正常运行 并休眠2秒后再次进行读取最 新一封邮件,如此循环往复; (3)、执行设备对象为:正在运行该程序的物理机器; 三、重点说明: 1、该python文件需要导入的包模块,需自行先安装; 2、该程序可在python2 和python3环境下运行,此处代码是在python2环境下编写的,如果需要移植到python3环境下,需修改相应的语法; 3、下篇将会讲解如何将该python程序使用py2exe打包成.exe可执行程序
,当我们发布时需要将应用程序进行打包,那通过SpringBoot编写的应用程序该如何打包呢? 推荐阅读 SpringBoot2.x基础篇:开发你的第一个SpringBoot应用程序 SpringBoot2.x基础篇:将应用程序打包为可执行Jar SpringBoot2.x基础篇:Linux后台运行 比较传统的方式是外置Tomcat,将应用程序打包成一个xx.war文件,该文件内只有应用程序源码编译后的.class以及配置文件。 ------------------------------------------------------- 当控制台出现BUILD SUCCESS时,证明我们本次package已经成功了,当前应用程序的可执行 运行Jar 要运行该应用程序,可以使用java -jar命令,如下所示: ➜ developing-first-application git:(2.x) ✗ java -jar target/service-application
但python也不能落下,毕竟很多代码就是python写的,全部用nodejs复写成本太高了,所以掌握一下python的可执行程序打包方法还是有一定必要,至少先可以把python用起来,把有的功能打包给读者小伙伴的 这时会在工程目录的dist目录下,我们就可以看到打包好的可执行程序了。 用上面命令打包出来的可执行程序在启动运行时,会出现后台终端窗口,这时我们如果想要去掉这个终端,只需要在打包命令后面加上参数-w就可以了,即pyinstaller -F demo.py -w。 PyInstaller常用选项 -h,--help 查看该模块的帮助信息 -F,-onefile 产生单个的可执行文件 -D,--onedir 产生一个目录(包含多个文件)作为可执行程序 -a,--ascii 不包含 Unicode 字符集支持 -d,--debug 产生 debug 版本的可执行文件 -w,--windowed,--noconsolc 指定程序运行时不显示命令行窗口(仅对 Windows
一、Python程序打包基础概念 1.1 为什么需要打包Python程序 Python作为解释型语言,源代码默认以.py文件形式存在。 将Python程序打包成可执行文件具有以下优势: 保护源代码不被直接查看 便于在没有Python环境的机器上运行 简化部署流程 提高终端用户使用便利性 1.2 主流打包工具对比 = ['PyQt5.QtNetwork'] 2. 数据文件打包:处理程序依赖的非Python文件 # 方法1:通过命令行参数 pyinstaller --add-data "data/*.json;data" app.py # 方法2:在spec文件中配置 level="requireAdministrator" uiAccess="false"/> 3.2 Linux/macOS注意事项 动态链接库:处理.so/.dylib依赖 文件权限:确保可执行权限
tab_search.rollup.js gen/chrome/browser/resources/tab_search/build_manifest.json D:/dev/depot_tools/bootstrap-2@ line 183, in _bundle_v3 output = f.read() UnicodeDecodeError: 'gb18030' codec can't decode byte 0xa2 shared.rollup.js gen/chrome/browser/resources/new_tab_page/build_manifest.json D:/dev/depot_tools/bootstrap-2@ line 183, in _bundle_v3 output = f.read() UnicodeDecodeError: 'gb18030' codec can't decode byte 0xa2 发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/128788.html原文链接:https://javaforall.cn
但python也不能落下,毕竟很多代码就是python写的,全部用nodejs复写成本太高了,所以掌握一下python的可执行程序打包方法还是有一定必要,至少先可以把python用起来,把有的功能打包给读者小伙伴的 这时会在工程目录的dist目录下,我们就可以看到打包好的可执行程序了。 用上面命令打包出来的可执行程序在启动运行时,会出现后台终端窗口,这时我们如果想要去掉这个终端,只需要在打包命令后面加上参数-w就可以了,即pyinstaller -F demo.py -w。 PyInstaller常用选项 -h,--help 查看该模块的帮助信息 -F,-onefile 产生单个的可执行文件 -D,--onedir 产生一个目录(包含多个文件)作为可执行程序 -a,--ascii 不包含 Unicode 字符集支持 -d,--debug 产生 debug 版本的可执行文件 -w,--windowed,--noconsolc 指定程序运行时不显示命令行窗口(仅对 Windows
utf16用2或者4个字节表示一个字符。utf32则用4个字节表示一个字符。 二.文本信息到可执行程序 不论是.c, .cpp 还是.h文件,所有的这些我们称之为程序的东西都是文本信息。他们都无法被计算机认识。 计算机只认识0和1.所以要让计算机执行我们用文本信息表示的程序,必须将这些文本信息表示的程序翻译成计算机认识的01代码串。 4)linking链接 由于我们引用了别的库中的符号,我们需要将这些符号的二进制指令集以某种方式装入到我们程序中,最后经过一些处理后才得到了能被计算机识别的可执行程序。 2.虚拟地址空间 32-bit的CPU,虚拟地址空间范围从0到0xffffffff线性增长。我们在程序中操作内存时使用的是虚拟地址。操作系统负责将虚拟地址映射到物理地址空间。
文章目录 一、可执行程序基本结构 二、GOT 全局偏移表 三、可执行程序函数调用步骤 一、可执行程序基本结构 ---- 程序加载到内存中之后 , 会分为以下 3 个部分 : 可执行程序 自定义函数库 ; 此时就会存在一个 GOT 全局偏移表 , 当 可执行程序编译 时 , 并 不知道每个函数的具体位置 ; 函数相对于其所在的函数库的相对偏移是确定的 , 但是在不同平台加载时 , 该偏移值是不同的 ; GOT 表的作用 : 记录每个函数的位置 , 其分为 2 部分 ; 跳转信息 : 一部分在 可执行程序 中是 跳转信息 , 会 跳转到函数对应的 系统库 或 自定义库中 ; 位置信息 : 另一部分是 ---- 可执行程序函数调用步骤 : ① 函数调用 : 可执行程序 执行时 , 先调用函数 , 此时不知道 被调用的函数 地址 ; ② 根据 GOT 表跳转函数库 : 跳转到 GOT 表 , GOT 表会横跨 可执行程序 , 自定义库 , 系统库 3 部分 , 在 可执行程序 内部的部分 是 函数库跳转信息 , 先跳转到对应的函数库 ; ③ 在函数库中根据 GOT 表跳转到函数位置 : 然后查找
main.py 中的所有依赖项将被打包到这个可执行文件中。--onefile:它指定将所有程序文件和依赖项打包成一个单独的可执行文件。 这意味着生成的可执行文件包含了你的主程序文件以及所有依赖的模块和库,使得你只需分发一个文件,而不是多个文件。3、找到生成的可执行文件: 在 dist 目录中找到生成的可执行文件。 这个文件的名称通常与你的主程序文件(main.py)相同,例如,main.exe。4、 将可执行文件拷贝到目标计算机: 将生成的可执行文件拷贝到目标计算机上,然后在目标计算机上运行它。 bash 代码解读复制代码pyinstaller --onefile --noconsole main.py2、在脚本中隐藏窗口(只在Windows上有效)如果你的程序是一个图形界面应用程序,你可以在你的 2、在运行 PyInstaller 命令时,可以通过 --icon 选项指定图标文件,这个图标将用于生成的可执行文件的显示图标和窗口图标。
) 通过调用链接器ld来链接程序运行需要的一大堆目标文件,以及所依赖的其它库文件,最后生成可执行文件 静态链接和动态链接 静态链接是指在编译阶段直接把静态库加入到可执行文件中去,这样可执行文件会比较大。 对于符号的动态解析过程,我们只需要了解的就是第二项和第三项,即GOT[1]和GOT[2]:GOT[1]保存的是一个地址,指向已经加载的共享库的链表地址(加载的共享库会形成一个链表);GOT[2]保存的是一个函数的地址 在实际的可执行程序或者共享目标文件中,GOT表在名称为.got.plt的section中,PLT表在名称为.plt的section中。 ELF文件符号动态解析的过程 ? (4)跳到PTL0的位置,这步将GOT[1],即共享库链表的地址压栈 (5)顺序执行jmp GOT[2],GOT[2]保存的是_dl_runtime_resolve函数的入口 (6)执行_dl_runtime_resolve set_thread_flag(TIF_NOTIFY_RESUME); } 设置新的eip和esp,即加载可执行程序启动的地方,我们打印
SELECTION-SCREEN END OF BLOCK selscr2. SUBTRACT 2 FROM sy-fdpos. IF sy-fdpos GT 0. p_tcode = wa_tstcp-param+2(sy-fdpos). ENDIF. i_fmodule-pname2 = wa_tfdir-pname. MODIFY i_fmodule. " do not perform for function modules (2nd pass) w_index = sy-tabix + 2.
进程(执行的程序)会占用一定数量的内存,它或是用来存放从磁盘载入的程序代码,或是存放取自用户输入的数据等等。 数据段:数据段(data segment)通常是指用来存放程序中已初始化的全局变量的一块内存区域。数据段属于静态内存分配。 代码段:代码段(code segment/text segment)通常是指用来存放程序执行代码的一块内存区域。 这部分区域的大小在程序运行前就已经确定,并且内存区域通常属于只读, 某些架构也允许代码段为可写,即允许修改程序。在代码段中,也有可能包含一些只读的常数变量,例如字符串常量等。 BSS段的大小从可执行文件中得到 ,然后链接器得到这个大小的内存块,紧跟在数据段后面。当这个内存区进入程序的地址空间后全部清零。包含数据段和BSS段的整个区段此时通常称为数据区。
可执行程序格式 Linux操作系统上的可执行文件格式是ELF(Executable and Linkable Format)。 如下图所示: 因为目标文件.o也是ELF格式,那么将目标文件链接为可执行程序实际上就是将相同属性的section合并: 在Linux操作系统中,通过elf格式的可执行文件,操作系统可以读取文件中的节和段信息 2. 可执行程序加载 因为可执行程序在Linux内是以ELF格式呈现的,而ELF包含了程序的虚拟地址信息,所以程序在编译形成的时候其虚拟地址就已经确定好了;进程在运行程序时就会读取程序ELF信息来初始化mm_struct 此外可执行程序ELF中还保存了整个程序的入口地址Entry point address,这样当系统执行程序时,除了将ELF中的虚拟地址加载到mm_struct中,还会将整个程序的入口地址赋给CPU的pc
如何将编写的c语言程序打包成exe可执行文件呢? 以前我们写程序很多是在编辑器上,让编辑起来编译运行我们的程序。如果想将其打包成exe可执行文件该如何做? gcc包括c和c++编译器 gcc和cc是一样的,c++和g++是一样的,一般c程序就用gcc编译,c++程序就用g++编译。 我们用gcc命令来编译我们的c语言程序。 gcc的用法 gcc test.c这样将编译出一个名为a.out的程序 gcc test.c -o test这样将编译出一个名为test的程序 -o参数用来指定生成程序的名字 我们一般用这个gcc 2:我们现在进入MinGW这个文件里。 打包后的exe文件一旦打开就执行了程序。 欢迎猿友们访问留言。 相关的请遵守csdn协议 -------jgdabc
但是对于不懂Python的人,如果直接发python文件,想要运行起来还是比较难的,如果能把python文件打包为可执行文件exe,在windows系统上双击就可以运行,那将极大地方便人们去使用。 本篇文章就介绍如何把Python GUI程序打包为可执行文件exe,可以在windows系统上双击轻松使用。 那我们如果要把python文件打包为exe可执行文件,有没有这样的库呢?回答是肯定的。 我们使用第三方库pyinstaller去打包python文件。 安装pyinstaller第三方库 pip install pyinstaller 2. 执行打包命令 pyinstaller yourprogram.py 什么,就这么简单? 当然了,如果你还需要一些定制化的东西,比如我要打包一个GUI程序,而默认的图标太丑了,我要换一个更好看的图标等等, 我们只需要增加一些参数就能完成,下面我们就以打包GUI程序为例,简单介绍下几个用到的参数