草庐IT

system-verilog

全部标签

windows - 如何获取 Windows SYSTEM 用户 token

操作系统是启用了UAC的Windows7或更高版本。调用进程具有管理员权限,已由UAC框确认。我想在用户SYSTEM下生成一个新的控制台窗口(cmd.exe)(不要问为什么)。我可以使用Sysinternals的PsExec工具或类似工具以交互方式执行此操作,但我没有源代码,我需要了解其工作原理。我知道我必须调用CreateProcessAsUser()并且在第一个参数(hToken)设置为NULL的情况下工作正常,但现在我需要知道如何获取hToken。我知道我可以通过调用LogonUser()来获得这样的token-但不能用于SYSTEM。我如何获得SYSTEM的token?我想过使

c - SetupDiGetDeviceRegistryProperty : "The data area passed to a system call is too small" error

我有一个使用SetupAPI在WindowsXP上枚举USB设备的代码:HDEVINFOhDevInfo=SetupDiGetClassDevs(&_DEVINTERFACE_USB_DEVICE,0,0,DIGCF_DEVICEINTERFACE|DIGCF_PRESENT);for(DWORDi=0;;++i){SP_DEVINFO_DATAdevInfo;devInfo.cbSize=sizeof(SP_DEVINFO_DATA);BOOLsucc=SetupDiEnumDeviceInfo(hDevInfo,i,&devInfo);if(GetLastError()==ERRO

.net - "Windows.Media.SpeechSynthesis"和 "System.Speech.Synthesis"有什么区别?

我正在尝试确定这两个API中的哪一个具有更多功能来在用C#开发的专业应用程序中执行文本到语音转换。操作系统在这里不是问题,问题在于两个命名空间如何提供更多功能、高质量的声音和稳定性。有没有人精通这两种技术并能告诉我这两个命名空间的不同之处?就特征而言,其中一个是另一个的超集吗?编辑:这两个命名空间的背后是同一个语音合成引擎?我的网络应用程序将在服务器端完成所有文本到语音的工作。 最佳答案 Windows.Media.SpeechSynthesis是Windows运行时的一部分,仅支持Windows应用商店应用。它不能从您的服务器应用

c++ - Windows native 开发 : debuggee tries to load werkernel. sys from system32

我现在正在研究WindowsNativeAPI,Nt*/Zw*方法。我下载了WDK,安装它并成功编译了一个应用程序(x64,在Win8.1x64,VS2013下)。它唯一做的就是调用NtOpenFile()。为了成功编译/链接它,我必须对项目属性(驱动程序应用程序模板)进行以下更改:添加来自WDK的包含文件夹从WDK添加Lib文件夹告诉链接器使用ntoskrnl.lib出乎意料的是,在运行调试器时,我收到错误消息“程序无法启动,因为您的计算机缺少C:\Windows\SYSTEM32\werkernel.sys。请尝试重新安装程序以解决此问题。“werkernel.sys显然存在于sy

c# - Windows 10 通用应用程序,在访问我的设备信息时抛出 : 'System.UnauthorizedAccessException' in app. exe 异常?

我是Windows应用程序开发和C#的新手。当我尝试从我的应用程序运行此代码时,它说unauthorizedexceptionthrown但是示例“MobileBroadband”应用程序正在我的诺基亚530上顺利执行相同的代码try{varmodem=MobileBroadbandModem.GetDefault();IMEI=modem.DeviceInformation.MobileEquipmentId;MANUF=modem.DeviceInformation.Manufacturer;MODEL=modem.DeviceInformation.Model;Debug.Wri

c++在后台运行system(),目录路径中有空格,+输出到文本文件

我正在尝试使用一系列选项运行tsharkexe并输出到一个fil(见下文)。但是,我真的坚持使用system()命令的正确语法。我以前在这里得到过帮助,从那以后我什至让它可以使用dosfor循环,但这超出了我的范围。根据我在SO上看到的其他建议,我尝试了各种转义序列并将整个命令封装在2-3个引号中。命令是:C:\ProgramFiles\Wireshark\tshark.exe-aduration:130-i3-Tfields-eframe.number-eframe.time-e_ws.col.Info>c:\test\output.csv我试过:system("startC:\\P

python - os.system(cmd) 和 subprocess.call(cmd, shell=True) 的执行与 CMD.EXE 不同

我正在尝试将一个长而复杂的Windows批处理文件转换为Python。除了细微的问题外一切正常,我怀疑这与引用有关,但不太清楚。在批处理文件中,这工作正常:Reg.exeadd"HKCR\7-Zip.zip\shell\open\command"/ve/tREG_SZ/d"\"C:\ProgramFiles\7-Zip\7zFM.exe\"\"%%1\""/f这段Python代码旨在但没有做同样的事情:importos,subprocesscmd=r'Reg.exeadd"HKCR\7-Zip.zip\shell\open\command"/ve/tREG_SZ/d"\"C:\Prog

.net - 从 system::String 转换为 std::string

要将system::String转换为std::string,我使用以下代码:IntPtrp=Marshal::StringToHGlobalAnsi(PORT);stringnewString=static_cast(p.ToPointer());Marshal::FreeHGlobal(p);但是,我拿到代码的地方使用IntPtrp=Marshal::StringToHGlobalAnsi(PORT);char*newString=static_cast(p.ToPointer());Marshal::FreeHGlobal(p);但是出于某种原因,如果我执行char*版本,我会在

java - System.getProperty ("user.name") 返回 HOSTNAME 而不是当前登录的用户名

这里System.getProperty("user.name");返回windowsserver2008机器的主机名而不是当前登录的用户名。下面是我的代码finalStringuser=System.getProperty("user.name");logger.info("UserName:"+user);我想知道System.getProperty在Java和WindowsServer2008中是如何工作的?和为什么在这种情况下会返回错误的值? 最佳答案 刚刚检查了这个:System.getProperty("user.nam

windows - 如何编写一个以 SYSTEM 权限运行的 Windows 8 软件?

对于标题中的错误措辞,我深表歉意,但这里有更多的上下文。我最近买了一台Windows8笔记本电脑,发现诺顿已预装并以SYSTEM级别权限运行。因此,我想到必须有某种方式让第三方应用程序以SYSTEM权限运行。然而,经过多次谷歌搜索后,我无法弄清楚是API调用还是注册表设置或其他完全允许诺顿执行此操作的东西,所以我决定询问SO社区。如何编写以SYSTEM权限运行的应用程序? 最佳答案 服务可以配置为以多个不同的帐户运行,包括LOCALSERVICE、NETWORKSERVICE、SYSTEM或任何用户的帐户。不推荐使用SYSTEM,因