草庐IT

windows - 各个平台的用户私有(private)临时存储在哪里?

我需要创建一个充满数据文件的目录。这些文件是临时的用户私有(private)文件。虽然这些文件是临时的,被系统删除了也没关系,但是文件很多,我想如果可以的话,重用它们。此外,我希望其他应用程序(以同一用户身份运行)也能访问/创建这些文件。这意味着我需要一个适用于不同编程语言的标准协议(protocol)。因为我知道有人会建议它,所以我不想使用'/tmp'或'%TEMP%或java系统属性java.io.tmpdir。这些目录是系统范围内的。我也非常有兴趣寻找平台标准或平台批准的方法,而不是仅仅找到有效的解决方案。我正在尝试收集一份列表,列出在不同平台上可以找到这些文件的位置。以下是我目

c# - 控件移动后 Windows 窗体 MouseEnter 不触发

我想在鼠标进入时为PictureBox的BackColor属性着色。当MouseEnter事件触发时,我将BackColor变为黄色,并在MouseLeave中重置为透明。然后当我点击一个PictureBox时,我改变了它的位置,所以我也有一个Move事件将它重置为透明。问题是,一旦我移动它,我需要用鼠标输入PictureBox两次以触发MouseEnter事件!这是一个非常图形化的问题,所以我上传了一点video向您展示正在发生的事情,它肯定会比我更好地解释我的问题。我尝试了另一种方法,不是在MouseEnter中而是在MouseHover中更改颜色。在这种情况下,它运行良好,除了我

c# - 检查用户是否处于非事件状态

如何检查用户是否处于非事件状态?我有这个:classUserActivity:IMessageFilter{privatedoubleafk_time=0.1;//minutesprivateDateTimelast_activity=DateTime.Now;publicstaticboolinactive=false;privateintWM_LBUTTONDOWN=0x0201;privateintWM_MBUTTONDOWN=0x0207;privateintWM_RBUTTONDOWN=0x0204;privateintWM_MOUSEWHEEL=0x020A;private

c# - 在 C# 中注册 Win + L 热键时出现问题

我正在使用下面的代码禁用热键,如Alt+f4、ctrl+c,它们运行良好。但是我无法使用以下代码注册win+L。namespaceKioskMode{publicpartialclassTest:Form{#regionDynamicLinkLibraryImports[DllImport("user32.dll")]privatestaticexternintFindWindow(stringcls,stringwndwText);[DllImport("user32.dll")]privatestaticexternintShowWindow(inthwnd,intcmd);[Dl

windows - 在远程机器上创建私有(private)消息队列

我读到在C#中我们不能在远程机器上创建私有(private)队列:Cannotcreateprivatemessagequeueonremoteserver我的问题是:在PowerShell脚本中,我们可以这样做吗?这是我的示例脚本:echo"LoadingSystem.Messaging..."[Reflection.Assembly]::LoadWithPartialName("System.Messaging")$msmq=[System.Messaging.MessageQueue]echo"Createthequeue"$qName="remoteserver\private

c# - 如何隐藏 MahApps.Metro 窗口中的关闭按钮?

我试图隐藏/删除我的MahAppsMetroWindow上的关闭按钮但没有成功。我试过这段代码:privateconstintGWL_STYLE=-16;privateconstintWS_SYSMENU=0x80000;[DllImport("user32.dll",SetLastError=true)]privatestaticexternintGetWindowLong(IntPtrhWnd,intnIndex);[DllImport("user32.dll")]privatestaticexternintSetWindowLong(IntPtrhWnd,intnIndex,in

windows - 清理私有(private)剪贴板格式

当应用程序以私有(private)格式(CF_PRIVATEFIRST到CF_PRIVATELAST)将数据放在剪贴板上时,它必须释放它以响应WM_DESTROYCLIPBOARD,因为对于这些格式,系统不会自动执行。从逻辑上讲,一个应用程序使用的私有(private)格式不会被任何其他应用程序看到(即使它们在私有(private)范围内使用相同的格式代码)。a)系统如何执行此操作?它是否使用剪贴板所有者(窗口句柄)?b)当所有者窗口关闭时,私有(private)格式项目是否会自动从剪贴板中删除?(使用剪贴板查看器似乎没有。)那么当窗口句柄被重用时会发生什么?除了响应WM_DESTRO

windows - 如何在 Windows 上拥有快速且高分辨率的计时器?

我正在编写一个分析器,它在函数进入或退出时查询计时器。因此它有可能每秒被查询数千次。最初我使用了QueryPerformanceCounter,尽管它的分辨率很高,但结果是相当慢。根据WhathappenswhenQueryPerformanceCounteriscalled?问题当我在分析器中使用QPC时,速度也明显下降,但1-2毫秒的数字可能还不错。如果我用GetTickCount替换它,我没有注意到任何减速,但该函数对于分析来说是不准确的。提到的问题提到了亲和掩码。我尝试使用SetProcessAffinityMask(GetCurrentProcess(),1)来绑定(bind

c# - 如何使在 wpf 窗口中运行的应用程序忽略单击或鼠标事件

目前我正在尝试在wpf窗口中运行虚幻4应用程序。但是我只希望用户看到窗口而不是单击它或使用它。为此,我尝试了各种解决方法,但似乎都没有实际效果。任何帮助将不胜感激。谢谢你。下面是我用来在wpf窗口中运行应用程序的代码。[DllImport("user32.dll",EntryPoint="GetWindowThreadProcessId",SetLastError=true,CharSet=CharSet.Unicode,ExactSpelling=true,CallingConvention=CallingConvention.StdCall)]privatestaticextern

c# - 以 C#.Net 形式托管进程会禁用某些进程的按钮

我试图在我的.net应用程序(主要是视频查看软件)中托管一个.exe,但是某些应用程序不允许我使用它们的菜单或某些控件。以前有没有人遇到过这个问题,或者知道为什么会发生这种情况?这是我托管应用程序的代码:#regionMethods/ConstsforEmbeddingaWindow[DllImport("user32.dll",EntryPoint="GetWindowThreadProcessId",SetLastError=true,CharSet=CharSet.Unicode,ExactSpelling=true,CallingConvention=CallingConven