Articles of Windows

SetupDiGetDeviceInterfaceDetail仅为所有USB HID对象的path返回“\”

我可以告诉我有多less个USB HID设备(7),但是每次尝试获取任何设备上的详细信息时,返回的path始终为“\”,使得我根本无法访问设备。 我使用的代码在过程中与此代码非常相似: HANDLE connectDeviceNumber(DWORD deviceIndex) { GUID hidGUID; HDEVINFO hardwareDeviceInfoSet; SP_DEVICE_INTERFACE_DATA deviceInterfaceData; PSP_INTERFACE_DEVICE_DETAIL_DATA deviceDetail; ULONG requiredSize; HANDLE deviceHandle = INVALID_HANDLE_VALUE; DWORD result; //Get the HID GUID value – used as mask to get list of devices HidD_GetHidGuid (&hidGUID); //Get a list of devices matching the criteria (hid interface, present) hardwareDeviceInfoSet = SetupDiGetClassDevs (&hidGUID, NULL, […]

代理DLL中无法parsing的外部符号

我正在尝试构build“Version.dll”的代理DLL,但仍然遇到与导出的函数有关的错误。 00000000 characteristics 4A5BC9E3 time date stamp Tue Jul 14 05:27:23 2009 0.00 version 1 ordinal base 15 number of functions 15 number of names ordinal hint RVA name 1 0 00001B14 GetFileVersionInfoA 2 1 00001E40 GetFileVersionInfoByHandle 3 2 0000193C GetFileVersionInfoExW 4 3 00001AB4 GetFileVersionInfoSizeA 5 4 000014E8 GetFileVersionInfoSizeExW 6 5 000015FC GetFileVersionInfoSizeW 7 6 […]

读取和写入一个大文件,而不是一个小块的磁盘一次的缺点?

我主要在基于Windows和Windows CE的系统上工作,其中CreateFile , ReadFile和WriteFile是工作马,无论是在本地Win32域还是在托pipe的.Net域中。 到目前为止,我一直没有任何明显的问题写或读大块文件,而不是循环,直到处理几个较小的块。 我通常将IO工作委托给后台线程,在完成时通知我。 但是看看文件IO教程或“教科书示例”,我经常会发现“小块循环”,而没有解释为什么它被使用,而不是更明显(我敢说!)“一次完成”。 我有什么缺点,我没有明白? 澄清: 通过大文件,我比较了我的单块与多个块。 我提到的多个块的例子通常在Windows CE上有1024个字节的大小,在桌面上有10个大小。 我的大文件通常是二进制文件,如手机等相机的照片,大小顺序为2-10 MB。 换句话说,不接近1 GB。

发送Ctrl Alt Del通过INPUT结构不起作用?

如何模拟这个ctrl alt del,以便它将工作? 我的代码如下: inputinput; / *生成“关键”* / Input.type = INPUT_KEYBOARD; Input.ki.dwFlags = KEYEVENTF_SCANCODE; Input.ki.wScan=29; Input.ki.dwExtraInfo=0; Input.ki.wVk=0; Input.ki.time=0; SendInput(1, &Input, sizeof(Input)); Input.type = INPUT_KEYBOARD; Input.ki.dwFlags = KEYEVENTF_SCANCODE; Input.ki.wScan=56; Input.ki.dwExtraInfo=0; Input.ki.wVk=0; Input.ki.time=0; SendInput(1, &Input, sizeof(Input)); Input.type = INPUT_KEYBOARD; Input.ki.dwFlags = KEYEVENTF_EXTENDEDKEY | KEYEVENTF_SCANCODE; Input.ki.wScan=83; Input.ki.dwExtraInfo=0; Input.ki.wVk=0; Input.ki.time=0; SendInput(1, &Input, sizeof(Input)); Input.type = INPUT_KEYBOARD; Input.ki.dwFlags = KEYEVENTF_SCANCODE […]

是否有必要在所有的Windows操作系统和所有版本上testing我的应用程序?

我将testing声称在Windows XP,Windows Vista和Windows 7上运行的应用程序。我知道我必须为32位和64位(如果存在的话)中的每一个testing应用程序,但是我不知道是否有必要testing每个操作系统的每个版本。 例如,如果我已经testing过Windows 7 Ultimate或Home,是否真的需要testingWindows 7 Starter? 如果我已经testing过Windows Vista Home Premium,是否需要testingWindows Vista Business? 等等 … testing应该支持的三种风格中的每一种版本都是非常耗时的: Windows XP Home w / SP2 Windows XP Professional w / SP2 Windows Vista Starter Windows Vista家庭基本版 Windows Vista家庭高级版 Windows Vista Business Windows Vista企业版 Windows Vista Ultimate Windows 7入门 Windows 7家庭普通版 Windows 7家庭高级版 Windows 7专业版 Windows 7企业版 […]

运行html5应用程序作为Windows可执行文件

我已经看遍了networking上的这类事情,我发现了很多类似的问题和文章,但没有回答这个问题。 我有一个大型的HTML 5应用程序,我想作为一个全屏幕本机应用程序作为一个可执行文件在Windows上运行。 我可以形象你可以通过以后在c + +的webkit做到这一点,但我不知道c + +,没有时间去彻底学习它。 任何人都可以build议使我的HTML5应用程序作为全屏Windows应用程序运行的最佳方式?

使用Symfony Process运行asynchronousPHP任务

对于耗时的任务(电子邮件发送,image processing…你明白了),我想运行asynchronousPHP任务。 在Linux上这很容易 ,但我正在寻找一种在Windows上工作的方法。 我希望它是简单的,因为它应该是。 没有大炮 ,没有SQL排队,没有再次安装的东西 …我只想运行一个该死的asynchronous任务。 所以我尝试了Symfony过程组件 。 问题是,同步运行任务可以正常工作,但是当它asynchronous运行时,它会沿着主脚本退出。 有没有办法来解决这个问题? composer require symfony/process 的index.php <?php require './bootstrap.php'; $logFile = './log.txt'; file_put_contents($logFile, ''); append($logFile, 'script (A) : '.timestamp()); $process = new Process('php subscript.php'); $process->start(); // async, subscript exits prematurely… //$process->run(); // sync, works fine append($logFile, 'script (B) : '.timestamp()); subscript.php <?php require './bootstrap.php'; $logFile […]

关于JFrames的问题

我正在运行Windows。 当你在Windows上运行一个应用程序时,你会得到一个button任务栏,你可以点击它来最大化和最小化它。 是否有可能创build一个JFrame没有这个或其他组件具有JFrame的function,但没有将其添加到任务栏。

无法在DLL中查找过程

为什么不能在dll中find指定的程序? 我有一个为Windows x86编译的my.dll库(操作系统是Windows 7 x64;但是我使用的是Go x86二进制文件 – LiteIDE – 而C#代码也是针对x86体系结构进行了显式编译的)。 我从C#使用它,它的工作原理: [DllImport("my.dll", EntryPoint = "my_function")] public static extern double my_function(double x); 但是,当我尝试使用它(在这里我试图find它)​​从通过: var ( dllMine = syscall.NewLazyDLL("my.dll") my_function = dllMine.NewProc("my_function") ) func main() { err := my_function.Find() if err != nil { fmt.Println(err) return } //… } 它说Failed to find my_function procedure in my.dll: The […]

Cygwin在运行Git push时导致longjmp

我试图从我的Windows 7,64位机器上的命令行运行git。 它大部分工作正常。 我尝试将我的本地更改推送到云中的私有存储库。 我试图运行的命令是git push origin master 我使用Cygwin 6.1,并导致以下错误。 大概是关于我在64位机器上运行的事实 0 [main] git-remote-http 6168 fork: child -1 – died waiting for longjmp before initialization, retry 10, exit code 0xC0000135, errno 11 error: cannot fork() for send-pack: Resource temporarily unavailable 我遵循这里的build议来更新我的rebaseall文件并重新命名rebase命令。 但它似乎并没有帮助。 任何人都可以重现这个问题或find解决办法吗? 先谢谢您的帮助。