草庐IT

edit_handle

全部标签

c - HANDLE - 文件句柄和目录句柄结构

语言:C操作系统:Windows我的应用程序是用nt级别的api构建的,必须操作文件和目录句柄。在Zwopenfile或zwcreate文件上,我得到一个HANDLE作为结果。通常HANDLE的值类似于0x00000024、28,2c...等。当我将其转换为LPBYTE以查看内容时。VisualStudio显示“无法评估表达式”。我了解到从创建/打开文件api返回的HANDLE不是指向内存位置的指针。但是,Windows使用该值并执行文件操作。Ntquerydirectory对象为我提供了有关句柄的信息。然而,Windows是如何实现这个功能的还不得而知。任何人都可以阐明它。

windows - 当程序被命令行中的 Edit>Mark 暂停时,究竟发生了什么?

在Windows中从命令行运行程序时,如果进入标记模式,则程序输出会暂停,让您有足够的时间复制所需的内容,然后继续执行程序。我一直认为这只是暂停了输出流,而程序仍然继续运行。但是,我发现它似乎也“暂停”了程序(或者至少阻止它通过套接字进行通信)。我的问题是:这种“暂停”实际上意味着什么?哪些线程被挂起?子进程是否已暂停(我猜不是)?例如,如果运行Java代码,是整个JVM挂起,还是只挂起主线程?Windows实际上是如何处理这个问题的?如果这个问题可能有点开放性,我深表歉意,但在打开QuickEdit模式的情况下,我想知道关键程序有什么风险!提前致谢 最佳答

c++ - 如何在 Windows 中访问继承的匿名管道 HANDLE,而不是 stdout、stderr 和 stdin?

我正在尝试通过Windows中的匿名管道从子进程接收数据。我知道如何使用标准I/O流来执行此操作,但这些被用于其他目的。我也知道如何在Linux或OSX中使用fork()、pipe()和execv()执行此操作。在Windows中,您可以使用CreatePipe()创建管道,并使用SetHandleInformation()使一端不可继承。然后,对于stdout和stderr,您可以将STARTUPINFO和hStdOutput或hStdError设置为CreateProcess()以传递另一端给child。在调用CreateProcess()之后,父级最接近它的是子级管道末端的句柄。

c - C中的DWORD和HANDLE类型有什么区别?

我在C中有一个返回类型为DWORD的线程,但它随后由HANDLE类型指针处理。这两种类型有什么区别?我专门为ANSIC问这个问题。没错,DWORD是uint类型,HANDLE是PVOID,C允许直接强制转换DWORD到HANDLE。但是这些类型有什么不同吗?或者我可以简单地说它们是一样的吗?这是一个在讨论中被问到的问题。我想知道正确答案是什么。 最佳答案 Win32:DWORD32位无符号长型HANDLEvoid*(32位指针)Win64DWORD32位无符号长型HANDLEvoid*(64位指针)不要只是假设你可以将一个转换为另一

windows - 原始 Win32 中的 Rich Edit 控件

RichEditControls的文档真的像它看起来的那样糟糕(错误吗?)?现在我正在手动调用LoadLibrary("riched20.dll")以便显示RichEdit控件。RichEdit的文档在使用RichEdit控件的第一个代码示例中没有很好地演示这一点。它谈到调用InitCommonControlsEx()来添加视觉样式,但没有提到要传入哪些标志。是否有更好的方式来加载RichEdit控件?http://msdn.microsoft.com/en-us/library/bb787877(VS.85).aspx这是我唯一能写的让它工作的代码:#include"Richedit

c# - Visual Studio : edit-and-continue on handled exceptions?

这是重现我期望得到的行为的代码:staticvoidMain(string[]args){//try//#2{stringx=null;//#1AssertNotNull(x,nameof(x));}//catch(ArgumentNullException){}//#2Console.WriteLine("Passed.");Console.ReadKey();}[DebuggerHidden]publicstaticvoidAssertNotNull(Targ,stringargName)whereT:class{if(arg==null)thrownewArgumentNullE

c# - 为什么 e.Handled = true 不起作用?

我有以下XAML在后面的代码中我正在这样做privatevoidStackPanel_MouseEnter(objectsender,MouseEventArgse){}privatevoidGrid_MouseEnter(objectsender,MouseEventArgse){e.Handled=true;}privatevoidButton_MouseEnter(objectsender,MouseEventArgse){e.Handled=true;}现在,即使我将鼠标移到Button上并设置e.Handled=true,Grid和StackPanel分别被调用。为什么?我应

c# - 打开SqlConnection "Handle is invalid"错误

此错误已开始偶尔且莫名其妙地发生,尤其是在连接到我们的session状态数据库时。这是错误:Exceptiontype:COMExceptionExceptionmessage:Thehandleisinvalid.(ExceptionfromHRESULT:0x80070006(E_HANDLE))atSystem.Runtime.InteropServices.Marshal.ThrowExceptionForHRInternal(Int32errorCode,IntPtrerrorInfo)atSystem.Data.ProviderBase.DbConnectionPool.T

c# - 控制台.ReadLine ("Default Text Editable Text On Line")

有什么办法可以实现吗?我想传递一些文本并让它出现在输入行上——而不是“输入您的姓名:”,我想要“输入您的姓名:默认可编辑文本” 最佳答案 好的,找到了。对不起。staticvoidMain(string[]args){Console.Write("Youreditabletext:");SendKeys.SendWait("hello");//hellotextwillbeeditable:)Console.ReadLine();} 关于c#-控制台.ReadLine("DefaultT

c# - 无效操作异常 : No IAuthenticationSignInHandler is configured to handle sign in for the scheme: MyCookieAuthenticationScheme

我正在尝试按照说明进行操作here将Cookie身份验证添加到我的网站。到目前为止,我添加了以下内容:InvoketheUseAuthenticationmethodintheConfiguremethodoftheStartup.csfile:app.UseAuthentication();InvoketheAddAuthenticationandAddCookiemethodsintheConfigureServicesmethodoftheStartup.csfile:services.AddAuthentication("MyCookieAuthenticationScheme