jjzjj

中低级

全部标签

c - 是否有来自低级库(如 kernel32.dll 或 ntdll.dll)的 wsprintf() 类型函数?

我正在编写一个低级记录器函数,它将文本字符串附加到文本(日志)文件的末尾。要求是此函数不应调用来自DLL的任何WinAPI,这些DLL可能尚不可用于该进程——例如当它从DllMain调用时处理程序。换句话说,它不能使用除了保证加载到任何用户模式进程中的库之外的任何库,即kernel32.dll或ntdll.dll.我可以通过CreateFile、WriteFile、CloseHandle、HeapAlloc、HeapFree等均来自kernel32.dll。问题在于格式化输出字符串。例如,我需要添加一些额外的(自动生成的)详细信息,例如当前时间、进程ID、sessionID等。我通常会

c++ - 低级鼠标钩子(Hook) - 鼠标在断点处卡住

我想自己绘制和移动我的窗口(使用chromium嵌入式框架)。为此,我需要在鼠标移出窗口时进行全局回调-所以我安装了一个低级鼠标钩子(Hook):hMouseLLHook=SetWindowsHookEx(WH_MOUSE_LL,(HOOKPROC)mouseHookProc,hInstance,NULL);钩子(Hook)简单地抓取鼠标事件并调用“CallNextHookEx”。这里没有问题,一切都按预期进行。我现在的问题是:如果调试器中断或抛出异常,我就不能再移动鼠标了。我尝试在另一个线程中处理钩子(Hook),如下所示:HANDLEmouseProcHandle=CreateTh

c++ - 单击标题栏按钮时,全局低级鼠标钩子(Hook)会导致卡住

我正在为IE编写一个附加组件。我需要在外部点击时关闭模态对话框。到目前为止,我已经使用WM_NCACTIVATE来接收这些通知,但似乎在Windows7(IE8)上我没有收到此消息(我在低完整性上运行并且我已经用spy++验证了它;它似乎当我以高完整性运行时它确实有效-奇怪的东西)。我已尝试为DeskBandUI线程使用常规鼠标Hook。除了对话框外的鼠标事件,我确实得到了所有鼠标事件。所以我转而使用全局低级鼠标钩子(Hook)(WH_MOUSE_LL)。一切正常,但由于一些非常奇怪的原因,当我单击任何一个标题栏按钮时,我会卡住5-10秒。经过一些在线研究后,我意识到这是一个常见问题,

c# - 如何在 C# 中记录低级操作系统文件事务?

由于文件/进程监视器在过滤和unnecessaryduplicationwhenlogging方面存在不足,我想重新创建该程序的功能并实时记录所有Windows文件操作。我想记录时间、进程名、源路径、目的路径、操作、结果、详情等各种属性,如ProcessMonitordoes.我怎样才能让C#从操作系统中提取这些信息?编辑:正如zett42所指出的,FileSystemWatcher将无法正常工作,例如,从进程本身创建的文件事件将不会被拦截。例如,thesetransactions都没有出现,即使我添加了事件:Changed、Created、Renamed和Deleted到FileSy

c# - .Net 的良好低级 http 库

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭5年前。Improvethisquestion我正在寻找.net的库,它可以让我完全控制通过网络发送的内容。我打算将它用于http实验。我知道c#的HttpWebRequest,我想尝试一些不同的东西,因为我无法控制所有header(您是否曾尝试更改它发送的Keep-Aliveheader的大小写?)或有选择地忽略证书错误。我想试验一下这些东西。我选择的语言是c#。谁能推荐一个好的http库,它可以让我在需要时干

c# - 如何在 C# 中使用低级键盘钩子(Hook)来抑制任务切换键(winkey、alt-tab、alt-esc、ctrl-esc)

谁能告诉我如何使用C#禁用任务切换键 最佳答案 我有完整的代码来禁用Windows键,Alt+Tab等等..现在我提供以下代码供其他人引用:/*CodetoDisableWinKey,Alt+Tab,Ctrl+EscStartsHere*///Structurecontaininformationaboutlow-levelkeyboardinputevent[StructLayout(LayoutKind.Sequential)]privatestructKBDLLHOOKSTRUCT{publicKeyskey;publicin

c# - 低级差异 : non-static class with static method vs. 静态类与静态方法

我想知道使用具有静态方法的非静态类与具有相同静态方法的静态类的一般好处(或缺点)是什么,除了我不能使用非静态类中的静态方法作为扩展方法。例如:classNonStaticClass{publicstaticstringGetData(){return"Thiswasinvokedfromanon-staticclass.";}}与此相比:staticclassStaticClass{publicstaticstringGetData(){return"Thiswasinvokedfromastaticclass.";}}使用一种方法优于另一种方法对性能/内存有何影响?注意:假设我不需要

c# - 多个键盘和低级 Hook

我有一个系统,其中有多个键盘,我真的需要知道击键来自哪个键盘。解释设置:我有一台普通的PC和USB键盘我有一个带有一些硬键的外部VGA屏幕硬键被映射为标准USB键盘,发送有限数量的键码(F1、F2、Return、+和-)我有一个低级Hook(在C#中,但实际上调用了Win32功能),即使我的应用程序未获得焦点,它也能够处理输入。问题是,当使用普通键盘时,一些映射的键代码被外部屏幕上驱动的应用程序拾取。外部屏幕发送并用于确认的按键之一是VK_RETURN。除非我可以识别“设备”并对其进行过滤,否则用户可能正在执行操作并在屏幕上确认它们,他们甚至都没有看。我如何知道哪个键盘负责按键操作?

c++ - 顶级或低级常量或两者都不是?

我正在处理C++Primer如果我理解正确的话:顶级常量适用于对象本身。低级常量意味着被引用对象是常量,这使得被引用对象成为顶级常量。//Aplainint.inti{0};//Top-levelconstints.constintci{42};constintci2{0};//Alow-levelpointertoconstint.constint*pci{&ci};//Low-level,becausethereferencedobjectcan'tbechanged.*pci=0;//error//Butnottop-level,becauseitcanbechangedtopo

c++ - 如何将低级常量应用于模板变量。我正在尝试编写一个 const_cast 实现

如何让这个static_assert传递到我失败的代码中?我尝试了T周围const的所有排列,但我无法获得constint*。编译器总是将其解释为int*const。templateunionconst_cast_impl{usingCT=constT;static_assert(std::is_same::value,"CTisnotconstint*");Tdata;CTcdata;const_cast_impl(CTptr):cdata(ptr){}operatorT(){returndata;}};intmain(){inta=2;constint*ptr=&a;int*ptr