草庐IT

WinAPI-RedBlue

全部标签

c++ - 禁用特定进程的注册表访问 (WinAPI)

我有一个问题,我似乎无法找到答案,但我确信答案就在那里。有没有办法可以禁用新创建的进程的注册表和文件访问权限?我正在使用作业对象(http://msdn.microsoft.com/en-us/library/windows/desktop/ms682409(v=vs.85).aspx),它说要为每个新作业进程设置权限,我在几本书中读到可以控制注册表和文件访问等内容。在寻找我的答案时,我发现我需要为诸如SE_BACKUP_NAME之类的东西(或任何它被称为)添加LUID,但这些特权常量似乎都没有反射(reflect)我想要的控制类型。所以我的确切问题是:我将如何为作业中新创建的进程禁用

c++ - dxvahd.h微软头文件中的#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)什么时候变为true

您好,我有2个VC++解决方案“A”和“B”(VS2008),它们都具有相同的代码库(只有几行代码不同)。在两者中使用DXVAHD.h。dxvahd.h是标准的Microsoft头文件。如果我们打开这个头文件,我们会看到有一个条件if“#ifWINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)”IseethatinVC++solution"A",theaboveconditional#ifstatementisfalse,hencethewholedxvahdheaderfilegetsgreyedout&isnotevencompiled

c++ - WinAPI 编辑控件不显示换行符

好吧,这只对了一半。换行符在大多数情况下工作正常,但是当我将文件加载到其中时,没有显示任何换行符。复制文本并将其粘贴到打开查看所有字符的Notepad++中,显示回车符和换行符在那里。我的加载代码:voidopen_file(HWNDhwnd,constchar*fname){SendMessage(textbox,WM_SETTEXT,(WPARAM)0,(LPARAM)"");FILE*file=fopen(fname,"r");fullpath=fname;filename=fullpath.substr(fullpath.rfind('\\')+1,fullpath.lengt

c++ - 使用对象方法作为 WinApi WndProc 回调

这个问题在这里已经有了答案:Whycallbackfunctionsneedstobestaticwhendeclaredinclass(6个答案)关闭9年前。我正在尝试制作一个在父窗口中显示控制台窗口的小类。(你可以想象那里显示的聊天或调试信息)现在,由于不同的实例确实有不同的私有(private)变量(例如消息数组或父窗口),我需要使用非静态方法作为Windows事件的回调。我想到了一些方法,将实际的类实例传递给静态回调函数,然后对其调用适当的方法,但在winAPI中,一切都是使用TranslateMessage和DispatchMessage让我没有机会使用自己的参数。我在这里找

whisper执行ffmpeg时,报错: hp, ht, pid, tid = _winapi.CreateProcess(executable, args, 系统找不到指定的文件。

最近在用openai/whisper-small进行语音转文字任务时,想着自己下载模型在本地离线跑,但是遇到了一下问题:importwhisperimportwaveimportnumpyasnpdownload_root=r"\whisper-small"#模型路径Automati_file=r"20230302152850300.mp3"#音频路径model=whisper.load_model("small",download_root=download_root)result=model.transcribe(Automati_file,language="zh",fp16=False

VBA字符串归一化(通过Winapi)

我是尝试在VBA编写代码以使用Winapi功能的新手。Winapi归一化功能可以使用什么编码?我期望的是UTF-16,但以下内容不起作用。字符的数量似乎不是正确计算的,然后实际创建归一化字符串的尝试将崩溃访问。'normFormEnum'notrandomnumbers,butfrom...'https://msdn.microsoft.com/en-us/library/windows/desktop/dd319094(v=vs.85).aspx'foruseincallingtheWinAPIFunctionNormalizeString()PublicEnumnormFormEnumno

如何创建一些基本控件,例如Winapi C ++上的ListBox

我正在使用Windows8.1机器上的CodeBlocksIDE在CPP中进行一个小项目。添加菜单还不错,甚至我也添加了一些常见的控件,例如根据我的在线来源的一些笔记,静态,编辑。main.cpp#include#include#include#include#defineBTN_BUTTON201#defineCMB_COMBOBOX202#defineLST_LISTBOX203#defineTXT_TEXTBOX204/*DeclareWindowsprocedure*/LRESULTCALLBACKWindowProcedure(HWND,UINT,WPARAM,LPARAM);/*M

c++ - 在 winapi 中复制 Visual Studio 2013 自定义 GUI

我正在使用C++和Winapi编写一个GUI程序,我希望我的窗口具有自定义边框。Windows桌面上的VisualStudio2013做到了这一点,它用自己的方案替换了典型的窗口边框,同时仍然具有与具有关闭、最小化和恢复按钮以及可移动的普通窗口相同的功能。一种冗长的方法是创建一个具有WS_POPUP样式的窗口并使用碰撞检测拦截鼠标事件。然而,考虑到Microsoft本身已经创建了具有不同GUI样式的程序,我想到可能有一种更标准化的方法来执行此操作。需要明确的是,我对使用QT或GTK等第三方API不感兴趣。我只想使用Microsoft提供的库来执行此操作。考虑到这些限制,是否有其他方法可

使用Winapi更改MS访问控制框

在访问表单控制框中,只有5个元素。从左到右:应用程序图标,标题,最小化,最大化和关闭。使用VBA调用访问属性,不可能以添加其他元素的方式更改此控制框。我的目标是使用Win32API调用为此控制框添加问号,该框指向一个网页(URL目的地针对每种表单特定)。我相信这是可能的,因为在访问之外有许多窗口形式,它们在控制框的等效方面具有此问号。这是我的一种形式的裁剪图像,说明我要做什么:这是一个有问号的单词形式的图像,使我相信这是可能的:我和另一个告诉我他认为这是可能的人交谈,但不知道如何。我已经搜寻了互联网,试图找到任何人谈论它,但是什么都没有。有建议吗?看答案问号是通过给窗口来创建的WS_EX_CO

c++ - WINAPI C/C++ -> 为什么二进制文件的大小会急剧增加? (从 VS2013 切换到 VS 2015)

即使我知道我可能会因为问这个问题而受到抨击,但我仍然会继续问这个问题,因为它真的让我抓狂。我希望你们中的某个人可能对此事有所了解。在VS2013上编译MS的WIN32默认('非空'设置)项目产生一个二进制大小~16kb。在VS2015Update3上编译同一个项目会产生大约105kb的二进制大小(大6倍多!)。我对传递给cl.exe和link.exe的最终命令行参数进行了双重和三次检查,它们看起来完全相同(项目设置)。即使更改项目设置-大小优先于速度-也无济于事(二进制文件仍然是105kb)。这里到底发生了什么?我什至在第二台计算机上安装了VS2015,以排除“有缺陷”的安装——结果相