首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Windows下面制作绿色版的Pytho

    首先在某个地方安装安装版的Python,比如虚拟机里,我装的是“python-2.7.1.msi”,然后把安装目录整个拷过来备用。之所以安装版无法做成绿色版,是因为其中的三个主要文件“python.exe”、“pythonw.exe”和“python27.dll(安装在system32目录中)”都依赖于“msvcr90.dll”这个非常恶心的东西。我们需要把它绿色化。 下载并解压缩源代码包,我下载的是“Python-2.7.1.tar.bz2”,然后进入“PCbuild”目录,用Visual Studio 2008打开“pcbuild.sln”文件,注意,“PC”目录下面还有一些早期版本Visual Studio的工程文件,我试过VC6的,根本无法编译,其它没试,不过既然官方都用2008的,那我们也跟着用就是了。 我的Visual Studio 2008装了SP1,编译其中的“python”、“pythoncore”和“pythonw”三个项目得到“python.exe”、“pythonw.exe”和“python27.dll”三个文件,替换备用目录中同名的文件,然后把Visual Studio 2008安装目录中的“VC\redist\x86\Microsoft.VC90.CRT”目录中的“msvcr90.dll”和“Microsoft.VC90.CRT.manifest”也拷到备用目录中,再把备用目录整个拷到一个干净的环境中。执行python.exe,却出错了:无法启动!用Depends工具观察,报依赖错误! 回过头检查编译生成的manifest文件才发现,原来虽然Visual Studio 2008装了SP1,按理CRT已经升级到了9.0.30729.4148版,但是manifest里链接的还是9.0.21022.8版!所以只能将“python”、“pythoncore”和“pythonw”三个项目的属性作如下设置:

    02

    vc60修改快捷键-MSDEV.EXE-应用程序错误解决办法

    使用VS6.0(VC++ or other)打开或添加项目时出现[MSDEV.EXE-应用程序错误""指令引用的""内存,该内存不能为"read";""指令引用的""内存,该内存不能为"read" ],这个可能是VS6.0和OFFICE 2007有冲突的缘故,下面是解决办法:首先去下载一个(exe 下载后解压缩),下载过来是一个C++原始文件vc60修改快捷键,需要通过VC编译一下产生一个 .dll将这个插件复制到X:\ Files\ Visual Studio\Common\AddIns重新打开VC6,Tools->->Add-ins and Macro Files,选中 Studio Add-in即可。此时打开VC6会有一个浮动工具栏(A O),点击A就是添加文件到工程,点击O就是打开文件。是不是很怪啊vc60修改快捷键,竟然做了一个插件进来,并没有对原先的冲突进行改进。VC6.0和Visio两个软件有冲突,把Visio卸载掉即可,若卸载无效,可按下述方法添加一个宏程序补救。

    02

    vc60修改快捷键-MSDEV.EXE 版本

    使用VS6.0(VC++ or other)打开或添加项目时出现[MSDEV.EXE-应用程序错误""指令引用的""内存,该内存不能为"read";""指令引用的""内存,该内存不能为"read" ],这个可能是VS6.0和OFFICE 2007有冲突的缘故,下面是解决办法:首先去下载一个(exe 下载后解压缩),下载过来是一个C++原始文件,需要通过VC编译一下产生一个 .dll将这个插件复制到X:\ Files\ Visual Studio\Common\AddIns重新打开VC6,Tools->->Add-ins and Macro Files,选中 Studio Add-in即可。此时打开VC6会有一个浮动工具栏(A O),点击A就是添加文件到工程,点击O就是打开文件。是不是很怪啊,竟然做了一个插件进来,并没有对原先的冲突进行改进。VC6.0和Visio两个软件有冲突,把Visio卸载掉即可,若卸载无效,可按下述方法添加一个宏程序补救。

    02

    在Windows10中Visual Studio2017中使用boost1.69.0

    Boost是一个功能强大、构造精巧、跨平台、开源而且完全免费的C++程序库,有着“C++ '准’标准库”的美誉。 Boost是由C++标准委员会部分成员所设立的Boost社区开发并维护,使用了许多现代C++编程技术,内容涵盖字符串处理、正则表达式、容器与数据结构、并发编程、函数式编程等。目前已经更新到了1.72.0版本,官网下载地址为:https://www.boost.org/users/history/version_1_72_0.html,由于我之前在自己Windows10系统上安装的是Boost 1.69.0,其源代码下载地址为:https://sourceforge.net/projects/boost/files/boost/1.69.0/,所以本文直接演示在VS2017下使用boost1.69.0版本,使用32位的debug模式进行测试,其他的64位和VS编译器同理。

    03

    rinetd小记

    官网:http://www.boutell.com/rinetd/ 下载地址:http://www.boutell.com/rinetd/http/rinetd.tar.gz 编译安装: 对于Windows,包rinetd.tar.gz已包含了编译好的可执行程序文件rinetd.exe,也可以使用VC(如VC6.0)去重新编译。 对于Linux,只需要将包rinetd.tar.gz解压,然后执行make命令即可,它的Makefile文件其实十二分地简单(也就2个源码文件): CFLAGS=-DLINUX -g rinetd: rinetd.o match.o         gcc rinetd.o match.o -o rinetd install: rinetd         install -m 700 rinetd /usr/sbin         install -m 644 rinetd.8 /usr/man/man8 执行make install即安装好,从Makefile即可看出,安装到了目录/usr/sbin。 启动rinetd,会报需要/etc/rinetd.conf文件,使用vi编辑一个即可,文件格式为: “监听服务IP地址 监听服务端口号 目标服务IP地址 目标服务端口号” 假设有三台机器: A 客户端机器 B rinet中转机器(IP为127.0.0.1,服务端口号设置为6789) C 目标服务器(IP为192.168.0.1,服务端口号为22) 现在A要访问C机器,但A和C之间网络并不通,但是A和B网络通,且B和C网络通(在实际中,通常B是带外网和内网两个IP的机器)。这个时候将/etc/rinetd.conf配置成: 127.0.0.1 6789 192.168.0.1 22 这样A访问127.0.0.1:6789时,实际访问的是192.168.0.1:22,B在这里做了中转代理。 为了体验rinetd的中转功能,A、B、C三台机器实际上可以为同一台机器,比如可以拿sshd等来做目标服务,可以观察到A就好象直接和C连接一样。 相关的工具: iptables、ssh、nginx、apache等。

    03
    领券