Articles of Windows

find一个Windows用户的“真实”的应用程序数据文件夹?

我有一个Delphi 6应用程序,像大多数Windows应用程序一样,将数据读取/写入用户的“本地应用程序数据”文件夹。 我使用下面的代码来确定该文件夹。 到目前为止,该代码为我的大多数用户工作。 我遇到了本地应用程序数据不在预期文件夹中的用户: C:\Users\Bob\AppData\Roaming\ 通常,本地应用程序数据文件夹parsing为: C:\Documents and Settings\Bob\Application Data\ 这个用户特殊情况的奇怪之处在于通常在HKEY_LOCAL_MACHINE中find的几个registry项实际上位于HKEY_CURRENT_USER中。 他们在Windows 7上运行。 缺乏一个更好的词,有没有办法让用户“真正”的应用程序数据,所以我可以更好地浏览这种情况? 如果是在CSIDL_APPDATA,CSIDL_COMMON_APPDATA和CSIDL_LOCAL_APPDATA特殊文件夹之间进行智能select,那么这样做的逻辑是什么? 正如您所看到的,我正在寻找一种通用function,无论用户正在运行的Windows版本或其特定的PCconfiguration如何,都可以find正确的应用程序数据文件夹。 我发现这个堆栈溢出post似乎有答案,但它使用.NET库中的函数,我正在使用Delphi 6.如果这个解决scheme回答我的问题,有人可以告诉我一个快速的方法来复制它在Delphi中: 我怎样才能得到当前用户的“应用程序数据”文件夹的path? // Function to get the app data special folder. function GetAppdataFolder: string; begin Result := GetSpecialFolderLocation(CSIDL_APPDATA); end;

EnumWindows返回句柄的顺序是否有意义?

从几个初步的testing看来, EnumWindows总是以反向实例顺序返回窗口,即最近实例化的窗口。 这是一个有效的观察? 如果是这样,所有版本的Windows都是真的吗? 这是一个可靠的假设,也就是说,行为logging在某个地方? 上下文: 我正在处理的情况是,我正在触发第三方应用程序来打开几个非模式窗口,我需要发送一些窗口消息到这些窗口打开,但我没有确定的方式确定他们的窗口类别和他们的标题不会有所不同,我也不知道他们的预期坐标。 但是,如果我可以依靠EnumWindows的上述行为,我可以简单地使用由EnumWindows返回的第一个句柄,它们的类和标题符合我的期望。 这仍然留下一些假设的循环漏洞,但我认为这将是足够好的。 不过,欢迎提供其他build议。

为什么我在cygwin中运行咖啡命令时出错?

通过使用node-v0.10.9-x64.msi安装程序安装Node.js,我遵循了CoffeeScript安装指南 。 然后,我启动了一个cygwin控制台,并使用我的.coffee文件将其放入目录中。 如果我自己inputcoffee ,它会给我这个错误: $ coffee coffee> events.js:72 throw er; // Unhandled 'error' event ^ Error: read ENOTCONN at errnoException (net.js:884:11) at Socket._read (net.js:389:21) at Socket.Readable.read (_stream_readable.js:320:10) at Socket.read (net.js:291:43) at new Socket (net.js:185:10) at process.stdin (node.js:660:19) at new REPLServer (repl.js:132:15) at Object.exports.start (repl.js:312:14) at Object.module.exports.start (C:\Users\foo\AppData\Roaming\npm\node_modules\coffee-script\lib\coffee-script\repl.js:106:23) at Object.exports.run (C:\Users\foo\AppData\Roaming\npm\node_modules\coffee-script\lib\coffee-script\command.js:77:32) at Object.<anonymous> (C:\Users\foo\AppData\Roaming\npm\node_modules\coffee-script\bin\coffee:7:41) at […]

testingpipe理运行权VB.NET的应用程序

我想要一个可靠的方法来testing应用程序是否通过UAC框运行,并具有完整的pipe理权限。 早些时候,我想在C:\ Windows \中创build一个文件夹进行testing,但是在其他计算机上运行却certificate是失败的! UAC框为计算机提供了所有的pipe理权限(包括在需要权限的地方创build文件夹和创build文件),并确保所调用或创build的子程序也具有与父代相同的权限。 有没有一种可靠的方法来testing我的应用程序是否已经提供了用户在运行应用程序时最大可能获得的所有pipe理权限? 如果是的话,我会很高兴有一块代码工作! 提前致谢

有没有办法使用Windows下的java.util.Preferences没有它使用registry作为后端?

我想使用java.util.Preferences API,但我不希望我的程序尝试读取或写入Windowsregistry。 我将如何去做这件事?

为什么我的客户端套接字不能连接到我的ServerSocket?

在这个非常基本的客户端/服务器套接字程序中,为什么我的客户端套接字从不连接并抛出java.net.ConnectException ? 我在一台计算机上运行MessageServer程序,在同一networking上的另一台笔记本电脑上运行ClientServer程序。 我已经validation,正在运行服务器程序的计算机的本地IP是10.0.0.1在该计算机上的Windows cmd中使用ipconfig命令。 服务器: package server; import java.net.*; import java.io.*; public class MessageServer { public static void main(String args[]) { ServerSocket serverSocket = null; try { serverSocket = new ServerSocket(4302); } catch (Exception e) { System.out.println("well bad news…"); } boolean noConnection = true; while(noConnection == true) { try { Socket client = serverSocket.accept(); […]

我如何快速创build大(> 1GB)的文本+二进制文件与“自然”的内容? (C#)

为了testing压缩的目的,我需要能够创build大文件,最好是文本,二进制和混合格式。 文件的内容不应该是完全随机的,也不是统一的。 全零的二进制文件是不好的。 完全随机数据的二进制文件也不好。 对于文本来说,一个带有ASCII随机序列的文件并不好 – 文本文件应该有模仿自然语言的模式和频率,或者源代码(XML,C#等)。 伪真实文本。 每个单独文件的大小并不重要,但是对于这组文件,我需要总大小为〜8GB。 我想保持文件的数量在一个可pipe理的水平,让我们说o(10)。 对于创build二进制文件,我可以新build一个大的缓冲区,然后在一个循环中执行System.Random.NextBytes和FileStream.Write,如下所示: Int64 bytesRemaining = size; byte[] buffer = new byte[sz]; using (Stream fileStream = new FileStream(Filename, FileMode.Create, FileAccess.Write)) { while (bytesRemaining > 0) { int sizeOfChunkToWrite = (bytesRemaining > buffer.Length) ? buffer.Length : (int)bytesRemaining; if (!zeroes) _rnd.NextBytes(buffer); fileStream.Write(buffer, 0, sizeOfChunkToWrite); bytesRemaining -= sizeOfChunkToWrite; } fileStream.Close(); […]

区别布尔和布尔?

在VC ++中,我们有数据types“BOOL”,它可以取值为TRUE或FALSE,而我们有数据types“bool”,可以假设值为true或false。 他们之间和每个数据types的使用时间有什么区别?

Py2Exe:避免Windows请求执行.exe文件的权限

我有一个py2exe构build的程序,直接从控制台(Windows Powershell)执行。 涉及的模块是:xlrd和PrettyTable。 不幸的是,每次程序被调用时,Windows都要求用户确认,因为程序需要特定的权限。 这是不可取的,因为脚本对系统是“安全的”。 它只是获取文本文件作为参数,并在同一个文件夹中输出一个文本文件。 我不希望用户被这个权限请求吓到。 有什么办法可以避免这种行为?

将标题(版权)信息添加到现有的源文件

我想将我们公司的版权信息添加到我们现有的所有源代码文件中。 该项目是在Eclipse开发的。 所以,对于新文件,我可以修改这里build议的设置。 但对于现有的文件,我该如何做到这一点。 如何修改数百个java文件来添加版权信息。 (而且我无法打开上面链接中提到的releng插件。 任何基于Windows的文本操纵脚本语言也将有所帮助。