草庐IT

fallow-half-arguments-and-returns

全部标签

windows - 在 Win32 GUI 应用程序中使用标准输出 : crashes if I don't have a redirect to file in arguments

我正在构建一个Win32GUI应用程序。在该应用程序中,我使用了一个旨在用于命令行应用程序的DLL。假设Foo.exe是我的GUI应用程序,而bar()是DLL中的一个函数,它将“hello”打印到标准输出。Foo.exe调用bar()。如果我从命令行运行Foo.exe,重定向(>)(即Foo.exe>out.txt),它将“hello”写入out.txt并正常退出(如预期的那样)。但是,如果我运行Foo.exe而不重定向(从cmd.exe或通过在Windows资源管理器中双击),它会在调用bar()时崩溃。如果我在调试器中运行Foo.exe,在命令行中使用重定向(通过项目的VS属性设

c++ - 移动文件夹 Windows C++ : Works Vista and up, 不是 XP

几个小时以来,我一直在努力解决这个问题,它在WindowsVista和Windows7上完美运行,但是当我在WindowsXP上运行它时,它失败了,没有任何消息。不幸的是,我没有XP下的开发环境,所以我不能通过调试器运行它来检查,我是否错过了一些非常明显的东西?同一段代码实际上使用CopyFile和一些命令将数据写出到C:\,所以如果它是权限错误,那就很奇怪了。编辑:返回值为1223,ERROR_CANCELLED表示已被用户取消。编辑2:我禁用了s.fFlags,它立即弹出一个对话框询问它是否应该创建dir-test文件夹,所以我切换到FOF_NOCONFIRMATION它似乎忽略了

windows - 相对文件路径差异 : debug mode and release mode of Qt Creator

QFilefile("test.txt");if(file.open(QIODevice::ReadOnly)){qDebug()我正在使用:Qt4.8.6和MSVC2010QtCreator3.1.1Windows7(32位)从上面的代码来看,如果.pro文件没有改动,对应的build目录对于Debug模式:D:\...\build-Main-MSVC2010-Debug而Debug模式的.exe会位于D:\...\build-Main-MSVC2010-Debug\debug对于Release模式:D:\...\build-Main-MSVC2010-Release而Release

python - import theano (0.6) on Windows 8 with device= gpu (and visual studios 12.0)

当我尝试将Theano与GPU设备一起使用时,我遇到了编译问题(它在CPU上运行良好)。我遇到的问题与已报告的问题几乎完全相同here,但是遵循提供的解决方案对我不起作用。按照原来的解决方案,我可以验证pycuda是否已经安装成功,但是导入theano仍然会抛出同样的错误:c:\python\python27\include\pymath.h(22):warning:dllexport/dllimportconflictwith"round"c:\programfiles\nvidiagpucomputingtoolkit\cuda\v6.5\include\math_function

python - cl : Command line error D8021 : invalid numeric argument '/Wno-cpp'

我在windows10CMD中遇到了一个问题,当我尝试为coco数据集编译一个.py文件时,问题就出现了。信息如下:runningbuild_extbuilding'pycocotools._mask'extensionC:\ProgramFiles(x86)\MicrosoftVisualStudio14.0\VC\BIN\amd64\cl.exe/c/nologo/Ox/MD/W3/GS-/DNDEBUG-IE:\Anaconda2\Lib\site-packages\numpy\core\include-I../common-IE:\Anaconda2\include-IE:\A

Windows "Documents and Settings"用另一种语言

我的C#程序遍历驱动器以获取存储在用户配置文件文件夹下的一些数据。我需要知道某个特定文件夹是否是“DocumentsandSettings”。我不能使用SpecialFolders技巧,因为我遍历的不是我的系统驱动器,而是一些附加的驱动器,它可能包含另一种语言的操作系统,例如德语。我需要的只是一组字符串,说明“文档和设置”在本地化Windows中的样子,例如德语、西类牙语、中文、意大利语、俄语、日语、韩语、法语等。是否有任何引用资料(文件、链接等)可以帮助我? 最佳答案 在这种情况下,您可能必须扫描目录结构并让您的代码对正确的文件夹

windows - 批处理 : Search for string to skip lines above and write results to new file

我已经成功地编写了一个脚本,它接受一个字符串来在特定文件中搜索,然后输出它第一次出现的行,然后我将该值放入for循环并跳过解析该行数并将其内容写入新文件。但是,我没有得到空行,我发现这些空行很难解决。我要搜索的字符串是“/]”,在它出现的地方缓存行号,然后用逗号分隔将它累积到一个变量中。然后我将该变量再次放入for循环中,并检索第一个出现的值作为我的最终“跳过此行数”变量,然后我在底部使用for循环再次读取该文件并将其值写入一个新文件并跳过文件开头的行数。下面是执行我上面描述的脚本的部分:setlocalenabledelayedexpansionsetlocalenableexten

C++ 中间函数 Hook : get register values and jump back [x86 assembly on windows]

在寄存器EBP中有一个int值,在EBX中有一个字符串。我需要在我自己的函数中从这些寄存器中获取值,对它们进行一些操作,最后跳回下面的一些代码。我在0x46AA17处对名为JmpHook的函数执行了一个JMP。voidJmpHook(){char*mystring;_asmmovmystring,ebxprintf("value:%s",mystring);_asm{jmp[0x46AA87]}}如您所见,我正在尝试将EBX处的字符串移动到mystring中,最后跳回0x46AA87,这是位于我的JMPJmpHook下方的几行。printf被调用并且mystring被输出,但所有这些在

winapi - 用于虚拟内存管理的新 Windows 8.1 API : `DiscardVirtualMemory()` vs `VirtualAlloc()` and `MEM_RESET` and `MEM_RESET_UNDO`

Windows8.1/Server2012RC2刚刚引入了用于虚拟内存管理的新API:OfferVirtualMemory()、ReclaimVirtualMemory()、DiscardVirtualMemory()、它们的用法非常简单,只需查看它们的名称即可。我无法理解这些API如何针对VirtualAlloc()以及标志MEM_RESET和MEM_RESET_UNDO工作,以及什么是细微差别。对于OfferVirtualMemory(),MSDN说它与VirtualAlloc()+MEM_RESET非常相似,只是它从工作集,并限制对页面的进一步访问。所以,基本上它限制了对页面的访

c++ - 命名管道 : ReadFile after ConnectNamedPipe return ERROR_BROKEN_PIPE

我重新激活了我确定在几个月前使用过的代码。它让我发疯,但它不再是了。我在其他问题中找不到答案。在服务器端,我使用创建了一个管道#defineMAX_MESSAGE_LENGTH1024SECURITY_ATTRIBUTESsa;SECURITY_DESCRIPTORsd;InitializeSecurityDescriptor(&sd,SECURITY_DESCRIPTOR_REVISION);SetSecurityDescriptorDacl(&sd,TRUE,static_cast(0),FALSE);sa.nLength=sizeof(sa);sa.lpSecurityDescr