我对Windows中的命名管道比较陌生。我需要一个类似于linux的socat的Windows工具来通过命名管道进行通信。Cygwin的socat可以访问窗口命名管道吗?如果是,怎么办? 最佳答案 我自己很快就弄明白了。使用putty和serial作为连接类型。在串行线路框中键入完整的管道名称。 关于windows-用于与Windows命名管道通信的程序,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com
我重新激活了我确定在几个月前使用过的代码。它让我发疯,但它不再是了。我在其他问题中找不到答案。在服务器端,我使用创建了一个管道#defineMAX_MESSAGE_LENGTH1024SECURITY_ATTRIBUTESsa;SECURITY_DESCRIPTORsd;InitializeSecurityDescriptor(&sd,SECURITY_DESCRIPTOR_REVISION);SetSecurityDescriptorDacl(&sd,TRUE,static_cast(0),FALSE);sa.nLength=sizeof(sa);sa.lpSecurityDescr
我有文件,这命名文件示例:log(2).txtlog(3).txtlog(4).txtlog.txt我想将它们全部重命名为带有数字的文件名,例如:1.txt2.txt3.txt4.txt系统windows或linux 最佳答案 只需将此代码保存到文件夹中的name.bat文件中,然后运行命令@echooffsetlocalEnableDelayedExpansionseti=0for%%ain(*.txt)do(set/ai+=1ren"%%a""!i!.new")ren*.new*.txt这里为了避免冲突首先将文件命名为“.new
我目前使用Filebot来处理我个人翻录/下载的电影的初始命名。当它识别出具有蓝光来源的电影时,它会标记电影:MovieTitle(Year)(BluRay)我想要一个区分大小写的powershell脚本,将“BluRay”重命名为“Bluray”。我当前的脚本如下:Dir|Rename-Item–NewName{$_.name–replace"BluRay","Blu"}>$null2>&1Dir|Rename-Item–NewName{$_.name–replace"Blu","Bluray"}>$null2>&1这很好用,除了我不希望它遍历并重命名每个文件夹(因为我使用基于修改过
我想检查我在两个进程之间使用的命名管道是否安全。尽管许多人说可以嗅探命名管道流量。我没有找到任何具体的方法来捕获命名管道流量。 最佳答案 您可以使用“PipeMonitor”来查看流经Windows命名管道的内容。此外,要限制对命名管道的访问,您可以在调用CreateNamedPipe函数时为命名管道指定安全描述符。安全描述符控制对命名管道的客户端和服务器端的访问。参见MSDNdoc. 关于windows-如何在Windows中捕获命名管道流量,我们在StackOverflow上找到一个
我正在尝试让C++应用程序让C#应用程序知道特定操作何时发生。我尝试这样做的方式是通过命名管道。我已经在C++应用程序上设置了一个命名管道服务器,它似乎正在工作(命名管道已创建-它出现在PipeList检索到的列表中)和C#应用程序上的一个命名管道客户端,失败的地方:C#客户端代码的第一行给出“尚未设置管道句柄。您的PipeStream实现是否调用了InitializeHandle?”错误,第2行抛出“访问路径被拒绝”异常。我哪里错了?C++服务器代码CStringnamedPipeName="\\\\.\\pipe\\TitleChangePipe";HANDLEpipe=Creat
我在WindowsXP中使用默认shellView实现了命名空间扩展。一切正常,但我想添加路障(ADescriptionofProtectedFolders-也适用于WindowsXP)。是否可能使用已记录/未记录的函数(SFVM消息),或者此功能是硬编码的? 最佳答案 如果您自己为扩展View填充所有数据,那么您可以自己读取隐藏(或任何其他)文件夹的内容并立即显示它们,或者在需要时隐藏。您的扩展使用它自己的命名空间,它不受内置shell保护选项的控制。附言从Windows7+开始应该不是问题。
我想根据它们的分辨率重命名我的视频文件,例如,对于1080p的视频“blabla.mp4”,我想将其重命名为“blabla[H.2641080p]”.该脚本应该能够自动检测视频的分辨率,而且如果文件已经重命名,则不应重命名。我找不到检查分辨率的方法,所以我尝试使用它对于1080p文件:FOR/r%%ain(*.mp4)DO(IFEXIST*[H.264*.mp4(ECHOAlreadydone)ELSE(REN"%%~a""%%~na[H.2641080p].mp4"))但它所做的是一次又一次地检查同一个文件,该文件已经重命名,因此回复总是“已经完成”。 最
我试图通过命名管道发送一个DWORD数组,但我一直在试图弄清楚如何发送单个DWORD。这是我到目前为止所得到的://CreateapipetosenddataHANDLEpipe=CreateNamedPipe(L"\\\\.\\pipe\\my_pipe",PIPE_ACCESS_OUTBOUND,PIPE_TYPE_BYTE,1,0,0,0,NULL);/*Waitingfortheothersidetoconnectandsomeerrorhandlingcutout*///HereItrytosendtheDWORDDWORDmsg=0xDEADBEEF;DWORDnumByt
我有一个作为LocalSystem运行的服务,它在登录用户的session中创建一个进程。然后该服务创建一个命名管道,客户端连接到该管道进行读写。根据https://msdn.microsoft.com/en-us/library/aa365600%28v=vs.85%29.aspx客户端只能从管道中读取(它不是Admin,不是Creator,也不是LocalSystem)。我创建了一个安全描述符来授予用户读写访问权限。但这没有用。所以我尝试为Everyone-Group提供读写访问权限。但这也行不通。我的客户端返回的错误代码始终是ACCESS_DENIED(5)。我很高兴知道我做错了