草庐IT

@Async失效情况

全部标签

C# - 如何在不使用 winform 的情况下在命令行 exe 中单击鼠标

我看到了一些“相似”的问题。但是答案总是要求提问者使用winform。我需要100%的控制台应用程序,它可以连接到Windows消息队列并提供鼠标点击点。鼠标点击可以发生在窗口的任何地方。我做了什么:我使用winforms完美地完成了这个。实际上我从一个博客中复制了大部分代码。这是工作。但我目前的项目是“自动化测试”。在这里,我们必须将大多数应用程序作为控制台应用程序启动。否则操作会变得一团糟。我尝试使用IMessageFilter,然后我才知道它需要表单。谁能指导我正确的方向?注意:我使用的是Windows7、.Net4.5、VisualStudioExpress-2012编辑:我根

c++ - 在没有 Windows.h 的情况下在 WIN32 上编译

作为学习练习,我编写了一个标准的Windows程序,该程序注册并创建了一个窗口,但没有显式包含Windows.h。Windows.h中的所有header符号都已提取并放入我包含在源代码中的自定义header中。自定义header具有类型定义,例如CreateWindow和WNDCLASSEX。程序是用cl.exe编译的,命令行如下:clmain.cpp/linkopengl32.libgdi32.libkernel32.libuser32.lib据我了解,这些.lib文件是导入库,它们在进程启动时执行设置工作以从关联的DLL加载函数地址。如果main.cpp直接包含Windows.h,

windows - 在没有管理员权限的情况下从用户应用程序访问驱动程序 IOControl

我已经编写了一个Windows内核模式驱动程序来访问PCIExpress板的内存空间,并且我能够使用CreateFile和DeviceIOControl函数与驱动程序的IOControl进行通信。一切看起来都很好,除了用户应用程序需要以管理员权限运行,因为需要对PCI设备进行读/写访问。这对我的应用程序来说是一个挑战,因为我不能指望我的用户在运行应用程序时拥有管理员权限。为了解决这个问题,到目前为止,我提出了以下想法:1)在驱动程序中创建命名管道并在用户应用程序中访问它,但我不确定驱动程序是否可以访问用于创建和访问命名管道的WindowsAPI。2)创建一个以管理员权限运行并成为用户应

windows - 在 Windows 中,默认情况下禁用本地内核调试。为什么?

我正在使用Windows10。首次安装Windows时,默认情况下禁用本地内核调试(windbg-kl)。要启用它,您必须运行bcdedit-debugon并重新启动。(不过,据我所知,即使禁用本地内核调试,SysinternalsLiveKd似乎也能正常工作。)为什么默认禁用本地内核调试?始终启用它有什么缺点吗? 最佳答案 如评论中所述,默认情况下禁用内核调试,因为它允许(即使在64位Windows上)加载未真正签名(自签名)的内核驱动程序。(并禁用PatchGuard等)当然,关于“管理员仍然生活在用户区”的评论是无稽之谈。评论

windows - 如何在不知道参数的情况下使用dll?

我有一个需要使用的dll。我还有一个程序可以调用这个dll来使用它。我需要能够在另一个程序中使用这个dll,但是以前的程序员没有留下任何文档或源代码。有什么方法可以监控对此dll进行了哪些调用以及传递了什么? 最佳答案 一般来说,你不能。这是来自DependencyWalker常见问题:Q:HowdoIviewtheparameterandreturntypesofafunction?A:Formostfunctions,thisinformationissimplynotpresentinthemodule.TheWindows'

c++ - 在没有注册表的情况下存储应用程序数据/设置的方法?

我需要一些从文件存储和获取数据的方法(在WIN32apic++应用程序中,而不是MFC或.NET)例如关闭窗口时保存窗口的x、y、宽度和高度,并在打开窗口时加载数据。我试过.ini文件,带有函数——WritePrivateProfileString和ReadPrivateProfileString/Int,但是在MSDN上它说“提供此功能只是为了与基于Windows的16位应用程序兼容。应用程序应将初始化信息存储在注册表中。”当我尝试在我的Windows764位机器上读取ini文件时,我遇到了蓝屏!(在visualstudio的Debug模式下)O.O我注意到大多数其他应用程序使用XM

windows - 是否可以在没有实际窗口的情况下在 Windows 操作系统上显示 "on screen"文本?

这个库正是我在Linux系统上所说的:http://ichi2.net/pyosd/我对Win32API的了解有限,但在我看来,除非你创建一个窗口并进入win32主循环,否则你无法做到这一点。一些谷歌搜索也证实了这一点。即便如此,它们是否是更新的GUI框架或技术可以在Windows上实现它?谢谢 最佳答案 您不需要讨厌的GUI框架。您可以:Drawdirectlyonthedesktop.当然,这通常不被认为是一个好主意,因为它会破坏另一个应用程序的内部结构。以这种方式绘制也很脆弱,因为每次桌面重新绘制时您所做的更改都会被删除。创建

windows - 是否可以在没有管理员权限的情况下在 Windows XP 上运行 Oracle?

我有共享计算机,其中管理员安装了OracleXE。但我不能,例如创建新用户,因为我在操作系统中没有权限,afaik。在Oracle文档中,DBA应该是管理员组的成员。是否存在无需管理员权限即可管理本地实例XE的方法?我需要启动/停止数据库、连接/断开连接、终止session等。需要测试我的Java应用程序。谢谢。 最佳答案 您不需要具有管理员权限的操作系统用户(安装并运行Oracle后)。只需以SYSDBA身份连接,然后您就可以创建新的Oracle用户并管理整个数据库。(我在XP上也是这样做的——与普通用户一起工作,但如果我需要在O

c - 在 c 中获取进程 Cpu 使用情况

如何在c中获取进程Cpu使用情况?我需要每个进程和线程的Cpu使用率。请举个例子谢谢! 最佳答案 在纯C中,这是不可能的,但由于问题也被标记为“Windows”:CPU使用率是CPU时间除以实际时间。GetThreadTimes和GetProcessTimes函数为您提供该信息(以及其他功能,例如上面提到的JoachimPileborg的性能计数器,但我认为这个可能更容易)。您可能还想使用CreateToolhelp32Snapshot首先要知道存在哪些进程和线程。您需要将线程/进程ID转换为句柄,但我想这不会是一个大障碍(即Ope

c# - 如何在不跳过的情况下精确跟踪鼠标坐标

我需要一种比这段代码更精确地跟踪鼠标坐标的方法。如果您运行此代码并非常快地移动鼠标或快速改变方向,坐标可能如下所示:50然后是40。似乎当鼠标快速移动时它不会跟踪指针覆盖的所有点,如下所示例如,它会跳过10个坐标。如果我慢慢移动它,就没有问题。我需要一种方法来跟踪所有指针坐标而不会跳过。我已经尝试使用全局Hook的代码项目示例,结果相同。我怎样才能做到这一点?是否可以更改注册表以强制Windows跟踪所有坐标。可能吗?我更愿意用C#来做,但也会考虑其他方式。谢谢。privatevoidForm1_MouseMove(objectsender,MouseEventArgse){if(nu