jjzjj

java - 如何确定屏幕保护程序是否在 Java 中运行?

我的应用程序定期在屏幕上显示信息。但如果屏幕截图处于Activity状态,则应用程序应等待用户返回。有什么方法可以确定屏幕保护程序是否正在运行?我不需要一个干净的解决方案,你只需要在windowsxp上工作。类似的问题,但其他技术:Howtodeterminethatascreensaverisrunning? 最佳答案 尝试使用JNA调用SystemParametersInfo的库系统调用。以下示例使用来自win32examples的代码由JNA提供:publicclassJNATest{publicstaticvoidmain(

c - 未知类型名称 'uint32_t' , MinGW

我收到错误unknowntypename'uint32_t'并包含stdint.h。uint8_t不会产生错误,uint16_t也不会。我正在使用MinGW和以下make-lines:#BuildforWindowsunderMinGW#MINGWDBG=-DDEBUG-O0MINGWDBG=-DNDEBUG-Os#MINGWOPT=-W-Wall-mthreads-Wl,--subsystem,console$(MINGWDBG)-DHAVE_STDINTMINGWOPT=-W-Wall-mthreads-Wl,--subsystem,windows$(MINGWDBG)mingw:

c# - EnumJobs 返回与 Marshal.SizeOF 不同的 JOB_INFO_1 大小

我正在从托管代码(C#)调用Win32函数EnumJobs(http://msdn.microsoft.com/en-us/library/windows/desktop/dd162625(v=vs.85).aspx)。[DllImport("Winspool.drv",SetLastError=true,EntryPoint="EnumJobsA")]publicstaticexternboolEnumJobs(IntPtrhPrinter,//handletoprinterobjectUInt32FirstJob,//indexoffirstjobUInt32NoJobs,//nu

c++ - 如何在 Windows 64 位机器上将 C++ 应用程序编译为 x64 模式?

我已经安装了WindowsSDK7.1平台工具,并打开了一个名为MicrosoftWindows7x64DebugBuildEnvironment的终端。现在我想使用cl.exe命令编译一个C++应用程序(名为main.cpp)。编译命令为:clmain.cpp然后,它输出main.obj和main.exe文件。但是当我尝试运行main.exe时,它在begincomputingdist之后和endcomputingdist.之前崩溃了。我想我应该编译应用程序进入x64程序。请问有人可以给点建议吗?main.cpp如下:#include#include#ifdef_MSC_VERtyp

c# - 在 Smart Card Crypto Provider 的对话框中设置 PIN 提示

我想更改在调用需要智能卡PIN的CryptoApi操作时显示的文本。当前提示非常通用(使用系统语言),“请输入您的身份验证PIN”:此对话框在COM对象中调用CryptSignMessage时显示,但调用是从C#WPF桌面应用程序(.NET4.5)进行的。如何自定义对话框?我找到了CryptSetProvParam函数的PP_PIN_PROMPT_STRING参数,但该函数需要HCRYPTPROV而我没有那个句柄。我只有读者姓名和签名证书。就是无法理解它。是否可以从C++或C#(最好是C#)自定义PIN对话框? 最佳答案 我相信以下

Windows上的Ruby脚本进程监控

我想在Windows上远程监控我的ruby​​脚本进程。我确实知道如何在基于unix的系统上使用god或类似的监控框架来做到这一点,但问题是我想在windows上使用它。基本上,我想做几件事:监控脚本是否运行如果脚本停止,应该重新启动将脚本的状态发送到远程服务器(这个不是很重要,我可以自己写这个选项)也许有人可以建议。请注意,我更喜欢用ruby​​编写监控解决方案,这样我可以进一步扩展它。 最佳答案 我在论坛上找到这个www.ruby-forum.com并稍微调整一下,您可以看到进程(脚本)是否仍在运行。我想重新启动并报告您可以自己

windows - 使用 AutoHotkey 创建没有默认值(非空白)的 Windows 注册表项

我需要使用AutoHotkey创建一个没有默认值的新注册表项。简单的解决方案应该是:RegWrite,REG_SZ,HKCU,Environment\testkey将值名称和值字段留空。不幸的是,这会创建带有空白默认值的testkey,即空字符串,这不是我想要的。我想要一个包含undefined内容的默认值,即当我在RegEdit中创建一个新key时发生的情况相同(抱歉缺乏术语,我有一个意大利本地化操作系统,所以我不知道“未设置”值在英语语言环境中的显示方式)。我找到了一个解决方法,即在创建后立即删除默认值:RegWrite,REG_SZ,HKCU,Environment\testke

windows - 带有 std::bind 的代码未编译,错误 C2780:需要 6 个参数 - 提供 8 个

考虑代码:#include#include#includeclassCFileOperationWatcher{public:CFileOperationWatcher(){}virtualvoidonProgressChanged(uint64_tsizeProcessed,uint64_ttotalSize,size_tnumFilesProcessed,size_ttotalNumFiles,uint64_tcurrentFileSizeProcessed,uint64_tcurrentFileSize){}virtual~CFileOperationWatcher(){}voi

c - 仍然不理解 C 中指向数字数组的指针

正如标题所说,我很笨。我试图在堆上分配空间来存储uint64_t数组的值。(它可以是任何类型的数字,但这是我用来区分值和指针的数字。)我得到了我的一个问题的答案here.我觉得我懂了。我想要做的是获取一个指向数字数组的指针,然后在运行时为该数组赋值。编辑:美国东部时间下午12:15更新。为了节省阅读量,我将原始问题留在下面,并根据评论和答案将问题缩小为以下内容。这是我的C代码:#include"stdafx.h"#include#include#defineNBRPTR3intmain(){uint64_t(*LngArr3)[NBRPTR];//pointertoarrayof3ui

c# - 如何将字符串发送到其他应用程序,包括 Microsoft Word

我试图完成这个但没有得到好的结果。我使用GetForegroundWindow()、AttachThreadInput(uint,uint,bool)和GetFocus()函数将字符串发送到另一个窗口。它适用于记事本、写字板和其他应用程序,但不适用于MicrosoftWord。intforegroundWindowHandle=GetForegroundWindow();uintremoteThreadId=GetWindowThreadProcessId(foregroundWindowHandle,0);uintcurrentThreadId=GetCurrentThreadId(