草庐IT

八进制

全部标签

windows - 如何使用 VirtualBox 创建 VM 的可再发行自包含二进制发行版?

是否可以使用VirtualBox或其他工具创建VM的自包含二进制分发版?我的要求:没有安装VirtualBox用于启动和停止VM(具有所有VirtualBox环境支持)的自包含二进制文件/-ies可能没有启动和停止VM的管理员权限至少是Windows,但如果是跨平台则更好 最佳答案 理论上,可以创建一个捆绑某种管理程序的巨型blob,该管理程序将首先与VM(磁盘、配置等)一起提取安装,然后运行自身和提取的VM。然而,这只是理论。实际上,管理程序是非常复杂的软件,需要某种ring-0访问(内核级别)才能直接与CPU和其他硬件对话,Vi

windows - 64位Windows平台不成熟? (即使将 32 位二进制文​​件与运行在其上的 64 位二进制文​​件进行比较)

我编译了一个ioquake3的64位二进制文​​件和一个SDL二进制文件,我注意到在Windows764位上运行,虽然相对稳定,但它没有一流的性能。64位Debian上的等效二进制文件,运行速度绝对更快,而且非常稳定。我在想:所有主要制造商仍然主要分发32位二进制文​​件-我能想到的主要异常(exception)是Autodesk的Autocad-Windows在其64位库上是否仍然不成熟? 最佳答案 我会回答不。自WindowsXP以64位版本发布以来,操作系统就一直支持64位,尽管pre-vista驱动程序和第3方软件还处于试验

windows - 使用二进制补丁时更新安装的程序版本?

所以我正在研究使用类似bsdiff的东西来创建非常小的自动补丁的想法。我注意到的一个限制是它不会更新win7中程序和功能中显示的已安装版本号。有没有什么方法可以手动更新这个,你应该使用任何api?以及您应该考虑的任何其他事情,显然需要考虑像UAC这样的事情。 最佳答案 程序和功能或添加/删除程序文件中的版本号来自注册表项而不是文件。在其中一个键下会有应用程序的卸载子键。HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\UninstallHKEY_LOCAL_MAC

linux - cygwin 二进制 exec 格式错误

我有一个脚本文件,可以使用Cygwin在Windows中运行。当我尝试使用此文件时出现以下错误-bash:/sigdet/filename:cannotexecutebinaryfile:Execformaterror.sigdet是我拥有脚本的Cygwin目录中的文件夹。Rawdata是包含脚本应该分析的原始数据文件的目录的名称。为了尝试解决这个问题,我更改了文件权限,我已经检查以确保它在64位机器上并且脚本似乎是在64位机器上编译的。完成这些步骤后,我不知道还有什么问题。以下是我输入的命令:我首先像这样更改了目录:$cd/sigdet/然后我运行了支持工作的脚本:$/sigdet/

c++ - 在十六进制编辑器中写入程序存储器并以编程方式读取

嗯,我有.exe应用程序和一些其他文件。我想要做的是将这个其他文件写入.exe文件的末尾。.exe文件应该在它的内存中找到这个文件的地址,从那里读取它并做一些事情。我能够找到我之前写入内存的文件的地址,但是当我尝试从那里读取时,我遇到了访问被拒绝的异常。我如何从那里阅读?基本上我只是想要一个自解压的PE文件。是的,我知道,我可以制作自解压存档,但这不是我想要的,因为我同时需要.exe和.dll,但自解压存档只能是.exe,所以看起来唯一的方法是让我的应用程序self-提取自身。这是代码:intmain(void){HMODULEhBegin=GetModuleHandle(NULL);

将十六进制字符串转换为 unsigned char[]

我想将一个字符串,例如“00-00-CA-FE-BA-BE”转换为unsignedcharch[6]数组。我曾尝试使用sscanf,但无论出于何种原因,它都会因变量macAddress后的堆栈损坏而崩溃。我猜格式说明符有问题,但我似乎没弄对。#include#includecharstring1[]="00-00-CA-FE-BA-BE";charseps[]="-";char*token1=NULL;char*next_token1=NULL;intmain(void){unsignedcharmacAddress[6];unsignedcharch;intidx=0;printf(

windows - 显示 GetInvalidFileNameChars() 的 Powershell 输出的十六进制值

在带有PowerShellv.2的Windows7中,我尝试使用[System.IO.Path]::GetInvalidFileNameChars()查看它的无效字符列表。当在提示符下输入时,它会列出字符,每行一个。我想要的是获取他们的十六进制(或十进制)代码。Amon我试过的东西:ForEach($charin[System.IO.Path]::GetInvalidFileNameChars()){"{0:x}"-f$char}:输出字符,而不是十六进制。[System.IO.Path]::GetInvalidFileNameChars()|{$_.ToString("X2")}Ex

c - Windows 中的二进制输出

我编写了一个读取二进制文件的程序,对其内容进行一些处理并将结果写入不同的文件。在Linux中它工作得很好,但在Windows中它不工作;输出文件总是1KB...这是程序的简化版本:#includevoidcopyFile(char*source,char*dest);intmain(intargc,char*argv[]){if(argc!=3)printf("usage:%s",argv[0]);else{copyFile(argv[1],argv[2]);}}voidencryptFile(char*source,char*destination){FILE*sourceFile;

windows - 如何从批处理文件中显示十六进制整数?

echoTheerrorlevelis:%ERRORLEVEL%生产>Theerrorlevelis:15我想要什么:>Theerrorlevelis:F我是否需要进行转换,或者有没有办法以不同方式显示数字?感谢您在正确方向上提供的任何帮助,谢谢。 最佳答案 很久以前,我很无聊。cmdcalc.cmd@echooffifnotdefinedtracesettrace=rem%trace%onSetLocalif"%1"=="/?"(call:help%0goto:eof)SetMinInBase=if/i"%2"EQU"Bin"ca

windows - 如何在不删除或操作任何内容的情况下将二进制内容加载到剪贴板? (自动热键)

每次我尝试将其加载到剪贴板时,我的文件中存储的二进制内容(包含以前的剪贴板内容)正在被修改(无目的或为此添加代码)。二进制内容表示复制到剪贴板的OneNote上有组织的段落。为了以后能够使用,我将剪贴板的二进制内容保存到test.clip文件中:FileAppend,%ClipboardAll%,C:\My\Path\test.clip然后当我尝试将二进制文件test.clip内容检索到剪贴板时使用:FileRead,Clipboard,*cC:\My\Path\test.clip然后粘贴到OneNote,我从之前复制并保存到二进制文件的段落中得到不完整的段落。加载此文件后,我尝试检查