草庐IT

C++ 写注册表

这个问题在这里已经有了答案:UsingC++toedittheregistry(5个答案)关闭8年前。我会在注册表中写入此注册表项。它应该用C++为Windows7和8编写。这是.reg文件:REGEDIT4WindowsRegistryEditorVersion5.00[-HKEY_CLASSES_ROOT\.bin\][-HKEY_CLASSES_ROOT\binimage\][-HKEY_CLASSES_ROOT\BootvisTraceFile\][-HKEY_CLASSES_ROOT\CrestronSIMPLWindowsCompiledProgram\][-HKEY_CL

c - 在Windows上使用C语言读取硬盘上的特定扇区

我已经尝试过这段代码,它在我从USB闪存驱动器读取一个扇区时有效,但它不适用于硬盘驱动器上的任何分区,所以我想知道当您尝试从USB读取时它是否相同或者从硬盘驱动器intReadSector(intnumSector,BYTE*buf){intretCode=0;BYTEsector[512];DWORDbytesRead;HANDLEdevice=NULL;device=CreateFile("\\\\.\\H:",//DrivetoopenGENERIC_READ,//AccessmodeFILE_SHARE_READ,//ShareModeNULL,//SecurityDescri

c - 数据断点是如何创建的?

我只是想知道数据断点(又名观察点)是如何创建的?我知道常见的断点是在x86上用一些特殊的INT3指令创建的。我想您可以通过定期扫描内存来创建软件观察点。但是从我自己写硬件断点调试器的角度来看,我在WindowsReference里面找不到任何东西关于这个(WinDbg上只有这两个主题12)。我还没有在Linux上看过。有什么想法吗?谢谢 最佳答案 在x86处理器上,您可以使用debugregisters设置数据断点。在处理器上。调试寄存器DR0-DR3存储要观察的地址。这就是VisualStudio限制为四个数据断点的原因。

c - 我的应用程序不会出现在 Windows 10 开始搜索中

我在1999年编写了一个Win-32桌面应用程序,此后一直在Windows的各种迭代中维护它。它不需要64位地址空间,所以我从来没有费心将它迁移到64位API。在Win10出现之前,我可以输入,应用程序就会运行。在Win10中,我必须双击应用程序才能运行它。如果我尝试应用程序的文件夹,它的内容显示在开始菜单中,而不是应用程序本身。我查看了所有应用程序,但该应用程序不存在。我已经在开始菜单中添加了一个快捷方式,但即使是该提示也不足以让Windows找到该应用程序。我尝试创建一个bat文件来启动应用程序并将bat文件放在程序文件夹中,但失败了。我从未为该应用程序编写过安装程序。该应用程序位

c - ReadProcessMemory 返回一个更大的缓冲区(C,windows)

我正在尝试使用以下代码读取进程内存:voidreaddata(HANDLEphandle,LPCVOIDpaddress,SIZE_Tdatasize){char*buff;SIZE_Tdataread;BOOLb=FALSE;buff=(char*)malloc(datasize);b=ReadProcessMemory(phandle,paddress,(LPVOID)buff,datasize,&dataread);if(!b){printf("errorreadingmemory,err=%d\n",GetLastError());return;}printf("DataRea

c - 有什么方法可以使用 getaddrinfo() 和 freeaddrinfo() 并且仍然是与旧版 Windows 兼容的程序?

在Winsock2库中,getaddrinfo()和freeaddrinfo()仅在WindowsXP及更高版本中添加。我知道如何在遗留系统中替换它们,但根据Windows版本有条件地使用将无济于事。应用程序不会在9x中启动,并显示一条消息说它链接到WS2_32.dll中丢失的导出。我正在使用MinGW编译和链接代码,并希望继续使用它。也许自己写那些函数?非常感谢你所做的一切。 最佳答案 您可以使用LoadLibrary和GetProcAddress来(尝试)获取getaddrinfo和freeaddrinfo的地址,然后通过指针调

c++ - 适用于 Windows 的 Memcached 客户端库

我想为我的C++应用程序使用memcached。为此,我需要一个客户端库,例如类似于mysqlclient。但是我真的很难找到合适的东西。一切似乎都只是linux,虽然有些声称与Windows兼容,但它们需要cygwin和其他我真正想避免的东西。所以我正在寻找的是带有头文件的预编译Windows库(最好),或者我可以使用VisualStudio轻松编译的东西。如果没有这样的东西,你认为我自己写它会是个坏主意吗?该协议(protocol)看起来很简单,我真的只需要基本命令(设置/获取等)。 最佳答案 你试过这个吗?http://cod

C++写文件到C盘

我的程序让用户指定写入文件的位置。如果他们指定“C:\output.txt”,文件操作似乎会成功(没有错误),但文件不会被创建。我知道这是由于Windows需要更高的权限,并且当以管理员身份运行时它会写入C:\。我的问题是如何检测到文件实际上并未打开?即使文件实际上并未创建,此block“成功”且没有错误:ofstreamofs;try{ofs.open(outputFile);if(!ofs.is_open()){throw"Thefilecouldnotbeopened";}ofs 最佳答案 如果open()无法创建/打开文件,

c - 如何在 Windows 上使用 C 将原始数据读写到 USB 驱动器

所以我制定了自己的加密方案,并想出了一个想法,我可以拥有一个带有原始数据(根本没有文件系统)的USB驱动器,我可以将其用作我的加密方案中的“key”。我需要一种直接将数据读取和写入USB的方法,我试过使用libusb但我想不通(对我来说太低级了)。我还看到有一种方法可以在Windows上使用CreateFile函数打开USB驱动器的句柄,但我无法弄清楚所需的参数,我得到了ERROR_INVALID_PARAMETER尝试读取时。我知道操作系统会认为驱动器/它的文件系统已损坏(因为它不会有)但这没关系,我只需要一种存储原始数据的方法。感谢任何帮助,谢谢! 最佳

python - 如何将 C lib 与 python 链接起来以便在 Windows 下嵌入?

我正在开发一个用C编写的应用程序。应用程序的一部分应该嵌入python,这是我当前的问题。我尝试将我的源链接到Python库,但它不起作用。当我使用MinGW时,我使用dlltool从python26.lib创建了python26.a文件,并将*.a文件放在C:/ProgramFiles(x86)/python/2.6/libs.因此,我用这个命令编译文件:gcc-shared-omod_python.dllmod_python.o"-LC:\ProgramFiles(x86)\python\2.6\libs"-lpython26-Wl,--out-implib,libmod_pyth