草庐IT

api-versioning

全部标签

windows - 当两个路径可能是相对路径时,将路径与 Windows API 组合

我需要能够将两个不同的Windows路径(它们都可能是相对的)组合成一个路径(通过将第二个应用为第一个的扩展)。文件系统上是否实际存在这两个路径无关紧要。示例:C:\abc+def->C:\abc\defC:\abc+..\def->C:\def\\server\share+def->\\server\share\def..\some\path\abc+..\def->..\some\path\def..\some\path+..\..\..\def->..\..\def理想情况下,它还应该将驱动器相关的“绝对”路径(即以单个反斜杠开头的路径)解析为给定驱动器上的适当路径:C:\abc

linux - 点网核心 : cross platform version of GetInvalidFileNameChars?

我正在构建一个将在Windows和Ubuntu系统上运行的.NetCore2.0控制台应用程序。我有一个字符串需要转换成一个安全的文件名。目前我正在使用以下代码来实现这一点:varsafeName=string.Join("-",name.Split(Path.GetInvalidFileNameChars()));它可以工作,但它会在不同的操作系统上产生不同的结果,因为Linux允许使用Windows不允许的字符。我喜欢在所有系统上产生相同结果的解决方案。是否有GetInvalidFileNameChars的跨平台版本可以为所有平台返回字符? 最佳答案

java - $JAVA_HOME 与 git bash 上的 java -version 不匹配(最后更新)

我不得不重新设置我的java安装。安装后,java-version和$JAVA_HOME在GitBash中不匹配。路径是错误的,所以我无法从中执行JavaCLI,我必须使用WindowsCMD。我该如何解决这个问题?昨天,我从C/ProgramFiles/Java中卸载了Java,并在C/Java中安装了更新(在删除所有java文件夹之后)。从WindowsCMD,java版本和它的路径匹配:C:\Users\Quentin.FRL-FKNJNQ2>java-versionjavaversion"1.8.0_201"Java(TM)SERuntimeEnvironment(build1

c# - 如何使用 Win32 API 在与 LocalSystem 帐户不同的帐户下安装服务?

如何使用Win32API在与LocalSystem帐户不同的帐户下安装服务?我正在使用以下代码来安装该服务。我想在不同的帐户下安装此服务。最后两个参数采用用户名和密码,但是当我给出时它会抛出错误。有什么具体的方法可以在这里提供用户名和密码吗?IntPtrsv_handle=CreateService(sc_handle,svcName,svcDispName,SERVICE_ALL_ACCESS,SERVICE_WIN32_OWN_PROCESS,SERVICE_AUTO_START,SERVICE_ERROR_NORMAL,svcPath,null,0,null,null,null)

windows - 优化 - 使用 Windows API 从磁盘读取文件

我正在使用WindowsAPI来处理文件。我的表现非常好。我分块读取文件,但我不知道它的最佳大小。我知道它应该是磁盘簇大小的倍数。磁盘是否有缓存?如果我使用比缓存大的block,我的性能应该最差吗?我说得对吗?谢谢! 最佳答案 是的,Windows在处理文件时提供了一个缓存层。参见officialMSdocumentation.我不确定确切的缓存大小和可能的权衡,缓存大小很可能取决于系统的可用内存大小和其他因素。另一个提高性能的好方法是使用异步I/OAPI。它更难编写和维护,但可以提高您的性能。参见officialexample.

Java 桌面 API,启动 .cmd 文件

我想使用桌面API在Windows上启动.cmd文件。Desktop.getDesktop().open(newFile(config.getCommandFilePath()));但这会启动.cmd文件,就好像它是从当前目录调用的一样。所以这与双击.cmd文件不同。关于如何像在目录中一样调用文件有什么想法吗? 最佳答案 参见this回答,它可以帮助。 关于Java桌面API,启动.cmd文件,我们在StackOverflow上找到一个类似的问题: https

Windows CSP API

我正在尝试编写自己的CSP。我正在尝试通过实现一个dll文件来做到这一点,但我不确定我的方法是否正确。我发现了这样的东西:加密服务提供商开发人员工具包(CSPDK)有CSPAPI的示例CPAcquireContextCPGenKey……等(它看起来像一个旧的api或winCE的api)我的问题来了,我应该实现哪些功能来为Windows7和XP提供新的CSP。我的计划好吗?-我应该实现简单的DLL并将她的引用放在寄存器中吗?还是我遗漏了什么? 最佳答案 您可能缺少CNG这是MSCryptoAPI的(长期)替代品。您也可以为此创建模块。

windows - 在 DirectX/Win API 程序中全屏渲染内部 windows 程序

我想做这样的东西,我将能够在Windows中以全屏模式运行我的内部程序,例如cmd.exe。早些时候,在WindowsXP中,我可以使用Alt+Enter在全屏模式下使用cmd.exe,但在WindowsVista中,由于WDDM(Windows显示驱动程序模型),这种功能被禁用。我认为,制作这种东西的最好方法是:“制作一个全屏DirectX/WinAPI程序,然后在其中渲染另一个内部程序”。我知道如何使用DirectX/WinAPI创建全屏程序,但无法想象如何在我的全屏程序中渲染另一个程序执行。另一种方式是:“只需使用cmd.exe或其他内部程序操作输入/输出流,然后在DirectX

c# - Windows 8 上 Windows Phone 的 Motion API 的直接等效项是什么?

我正在尝试将WindowsPhone程序移植到Windows8,但是为了定位,MotionAPI用于我有如下代码行IfMotion.IsSupportedThenmotion=NewMotionWith{.TimeBetweenUpdates=Me.TargetElapsedTime}EndIfIfmotionIsNotNothingThenTrymotion.Start()CatchEndTryEndIfDimmatrixAsMatrix=motion.CurrentValue.Attitude.RotationMatrix我能找到的最接近的是OrientationSensor,因为

c++ - 在 Windows 桌面共享 API 上,UAC 提示变为黑色暂停屏幕

我想使用WindowsDesktopSharingAPI制作类似应用程序的远程协助。MSDNBlogsays,Whatisthebehaviorwhen"SecureDesktop"popsupwhilesharing?"Pausescreen-Blackscreenwithtwobars(indicatingpause)atlowerright"isremotedwhensecuredesktop(UACprompts)isuponsharer'smachine,whensharingprocessisrunasanon-systemprocess.是的,这是我的问题。如何避免黑屏?