草庐IT

api-ms-win-downlevel-user

全部标签

Windows 8 : Unable to allocate 2GB with 3GB User Address Space

我正在尝试创建用于测试的Windows832位程序。测试包括大量分配,我遇到了麻烦。操作系统是用/3GB启动的,机器有8GB和一个页面文件,程序是用/LARGEADDRESSAWARE链接的,所以我不应该受到内存限制。(由于某些类型的定义方式-例如,size_t),使用32位程序进行测试对我来说很重要。问题是我无法从new或VirtualAlloc分配2GB(0x80000000)内存。new抛出bad_alloc并且VirtualAlloc返回NULL和ERROR_NOT_ENOUGH_MEMORY。在以前的Windows版本中,3GB地址空间意味着应用程序被赋予0x00000000

windows - 文件名中的 MS-DOS 时间戳

我在批处理文件中有以下内容。settimefmt=%TIME:~0,2%%TIME:~3,2%%TIME:~6,2%dir*.*>logfile_%timefmt%.log这在上午10点之后完美运行,但在此之前失败,因为它向时间戳添加了一个空格而不是前导0。在MS-DOS中有没有办法创建一个前导0的时间戳?我更喜欢使用相当标准的命令,以便它从WindowsXP开始工作。 最佳答案 最好一次获取时间,然后也解析元素。第三行将空格替换为0settimefmt=%time%settimefmt=%TIMEFMT:~0,2%%TIMEFMT

c++ - 通过 Windows API 函数替换对 AfxGetInstanceHandle() 的调用

SHELLEXECUTEINFOinfo;//Initializingstructinfo.cbSize=sizeof(info);info.fMask=SEE_MASK_NOCLOSEPROCESS|SEE_MASK_FLAG_NO_UI;info.hwnd=NULL;info.lpVerb=_T("open");info.lpParameters=sParameters_p;info.lpDirectory=_T("");info.nShow=SW_SHOW;info.hInstApp=NULL;info.lpFile=sFileName_p;//Problemhere:info.

ruby-on-rails - 为什么错误 "No route matches [GET] "/users/sign_out”?

当我登录到我的应用程序时,它显示我已成功登录。但是当我点击导航栏中的链接退出时,它给我一个路由错误。我不确定为什么我总是收到路由错误。我基本上已经尝试了关于此错误的所有答案,但我似乎无法弄清楚。RoutingErrorNoroutematches[GET]"/users/sign_out"Rails.root:c:/Users/Doesha/desktop/pinplugApplicationTrace|FrameworkTrace|FullTraceRoutesRoutesmatchinpriorityfromtoptobottomHelperHTTPVerbPathControll

c++ - 我的 Visual C++ Win32 中有一个无法关闭的 MessageBox!到底是怎么回事?

我有一个无法关闭的消息框,我不确定为什么。它是在我的窗口过程中为这样创建的对话框创建的:hwnd=CreateDialog(GetModuleHandle(NULL),MAKEINTRESOURCE(IDD_DIALOG1),NULL,WndProc);下面是有问题的WndProc代码。问题出在MessageBox调用上,OK按钮没有任何作用,也没有点击该消息框上的“X”。BOOLCALLBACKWndProc(HWNDhwnd,UINTmsg,WPARAMwParam,LPARAMlParam){staticHBRUSHbgBrush;switch(msg){caseWM_INITD

windows - 用于 Win10 驱动程序签名的 inf2cat

我正在使用Microsoft的usbser.sys驱动程序通过USB使用串行接口(interface)仿真与自定义硬件通信。自Win8.1以来,我必须签署驱动程序。我的过程中,我使用了这个命令:Inf2Cat/driver:"c:\path_to_driver"/os:8_X64,8_X86,Server8_X64,Server2008R2_X64,7_X64,7_X86,Server2008_X64,Server2008_X86,Vista_X64,Vista_X86,Server2003_X64,Server2003_X86,XP_X64,XP_X86,2000一切都很好。但是,在

windows - 为什么 Windows 让我们在某些 api 中指定结构的大小?

在一些windowsAPI中,例如Module32Next、Module32First、Process32Next、Thread32Next等,程序员是强制将结构的dwSize字段设置为结构的大小。为什么Windows让我们这样做?这些结构不是Windows自己定义的吗?大小不是已知常数吗?PS:我研究了这些函数,发现它们只是检查大小是否等于硬编码常量。 最佳答案 通过要求程序员指定结构的大小,Windows可以告诉程序员正在使用哪个版本的结构。一些这样的结构实际上在不同版本的Windows之间发生了变化,而另一些则没有-但提供大小

windows - 在 win32 上构建多语言应用程序的最佳实践是什么?

我必须在WindowsMobile上构建一个GUI应用程序,并希望它能够让用户选择她想要的语言,或者让应用程序自动选择语言。我考虑使用仅包含所需资源的多个dll。1)让应用程序自动选择合适的资源语言而无需用户干预的首选(默认?)方法是什么?有sample吗?2)我有哪些选项可以让用户/应用程序控制它应该显示什么语言?3)如果可能,如何创建包含多种语言资源的dll,然后动态选择语言? 最佳答案 对于#1,您可以使用GetSystemDefaultLangID函数获取机器的语言标识符。对于#2,您可以列出您支持的语言,当用户选择一种语言

windows - waveOutWrite API 方法回调的延迟(或延迟)时间是多少?

我正在另一个论坛上与一些开发人员就准确生成MIDI事件(注意消息等)进行辩论。人耳对轻微的计时误差非常敏感,我认为他们的主要问题来自于使用相对低分辨率的计时器,这些计时器以15毫秒的间隔(足够大,足以导致明显的误差)量化它们的事件。大约10年前,我编写了一个示例应用程序(Windows95上的VisualBasic5),它是一个组合软件合成器和MIDI播放器。基本前提是一个跳跃缓冲回放系统,每个缓冲都是十六分音符的持续时间(例如:每分钟120个四分音符,每个四分音符为500毫秒,因此每个十六分音符为125毫秒,因此每个缓冲区是5513个样本)。每个缓冲区都通过waveOutWrite方

windows - Win32 : How to crash?

我正在尝试找出Windows错误报告的保存位置;我今天早些时候点击了发送,但我忘记了我想“查看详细信息”以便检查内存小型转储。但我找不到它们的存储位置(谷歌也不知道)。所以我想编写一个会崩溃的虚拟应用程序,显示WER对话框,让我单击“查看详细信息”以便我可以到达保存转储的文件夹。我怎么会在Windows上崩溃?编辑:我问的原因是因为我试过堆栈溢出和float除以零。StackOverflow使应用程序消失,但没有弹出WER对话框。float除以零导致+INF,但没有异常,也没有崩溃。 最佳答案 你们太啰嗦了!:-)这是一个简洁的方法