草庐IT

defaults-file

全部标签

windows - 安装到 Program Files 的应用程序是否有权修改其文件夹?

如果我将我的应用程序安装到程序文件中,它是否始终能够在其安装目录中创建和写入文件?它似乎适用于许多不同版本的Windows,但在某些情况下它不起作用吗?我主要使用这种方法进行日志记录。如果这不是正确的方法,是否有更好的记录位置?注意:我的安装程序需要管理员权限才能运行,并且它向安装目录中的所有用户授予完全访问权限。 最佳答案 应用程序不以用户身份运行,用户以用户身份运行。如果您将应用程序安装到ProgramFiles中,并且假设您需要提升权限才能执行此操作,那么当您的标准用户随后运行该应用程序时,该用户就是需要权限的用户。应用程序以

c# - 在内存中操作文本文件的最佳方法 : read as byte[] first? 读取为 File.ReadAllText() 然后另存为二进制文件?

我需要更改内存中的文件,目前我使用文件流和二进制读取器将文件读入内存中的byte[]。我想知道更改内存中的文件、将byte[]转换为字符串、进行更改并执行Encoding.GetBytes()的最佳方法是什么?或者首先使用File.ReadAllText()然后使用Encoding.GetBytes()将文件作为字符串读取?或者任何方法都可以在没有警告的情况下起作用?有什么特别的方法吗?我需要用额外的字符或替换字符串替换文件中的特定文本,大约有100,000个文件。可靠性优于效率。文件是类似于HTML的文本,而不是二进制文件。 最佳答案

c++ - Qt Creator C1083 : Cannot open include file: 'cstddef' : No such file or directory

我尝试在Windows10上的QtCreator(Qt5.7.0)中构建程序,但我得到了D:\Qt\Qt5.7.0\5.7\msvc2015_64\include\QtCore\qglobal.h:45:error:C1083:Cannotopenincludefile:'cstddef':Nosuchfileordirectory错误信息。我发现这可能是由于缺少WindowsSDK引起的,但我安装了它,运行了vcvarsall.bat并且没有任何反应。我尝试使用“MinGW5.3.032位”编译器和“GNUgdb7.10.1forMinGW5.3.032位”调试器(使用“Micros

python - 将 Windows Linux 子系统 bash 与 VS Code 结合使用时出现 "No such file or directory"

我在带有WindowsLinux子系统和Ubuntu18.04的Windows10上使用VSCode。我试图做的是使用VSCode作为python开发环境,以bash作为终端,并在Ubuntu系统上安装python3解释器作为其默认的python可执行文件。在我的用户配置中我有:"terminal.integrated.shell.windows":"C:\\Windows\\System32\\bash.exe"设置,在Ubuntu下安装了python3,python是它的别名。当我尝试执行python文件时,出现以下错误:/usr/bin/python3:can'topenfile

java - 在 Windows 7 上 : Same path but Explorer & Java see different files than Powershell

已提交以供您批准,这是一个关于被困在暮光之城的可怜的小java进程的故事......在我举起手来只是说NTFS分区已损坏之前,是否有任何合理的解释来解释我所看到的。我有一个这样的路径的文件C:\ProgramFiles\Company\product\config\file.xml我在升级后阅读此文件并看到一些奇怪的东西。Eclipse和我的Java应用程序仍然看到该文件的旧版本,而其他一些程序看到的是新版本。使我确信问题不是我的粗手指的测试是这样的:在资源管理器中,我输入了上述路径,资源管理器显示了该文件的旧版本。通过Ctrl-F5强制资源管理器重新加载仍然会产生旧版本。这是我在Ja

Windows 资源管理器外壳扩展 : create file and enter "rename" mode

对于shell扩展(UI类似于“新建/”上下文菜单),我需要创建一个文件,选择它并进入“重命名”模式,以便用户可以调整默认名称。问:如何进入文件的“重命名”模式? 最佳答案 执行此操作的正确方法是使用IShellView::SelectItem与SVSI_EDIT旗帜。 关于Windows资源管理器外壳扩展:createfileandenter"rename"mode,我们在StackOverflow上找到一个类似的问题: https://stackoverf

c# - 为什么 File.Move 允许 2 个线程同时移动同一个文件?

我们目前有一个应用程序可以监视文件夹中的新文件。为了使其容错并能够一次处理更多文件,我们希望能够在不同机器上运行该应用程序的多个实例。我们使用File.Move来“锁定”一个文件,并确保一次只有一个线程可以处理一个文件。为了测试只有一个应用程序和/或线程可以对文件执行File.Move,我创建了一个简单的应用程序(基于原始应用程序的代码),每个应用程序创建10个线程并监视一个文件夹,当每个线程检测到一个新文件时,它对其执行File.Move并更改文件的扩展名,以尝试阻止其他线程执行相同的操作。我在运行此应用程序的多个副本(并且它自己运行)时看到一个问题,其中2个线程(在同一应用程序或不

c# - Visual Studio - 继承控件的新 "default"属性值

我正在寻求有关在VisualStudio中为继承控件设置新的默认属性值的帮助:classNewCombo:System.Windows.Forms.ComboBox{publicNewCombo(){DropDownItems=50;}}问题是基类属性DropDownItems设置了一个不同值(不是50)的“默认”属性。因此,当我将控件拖到窗体上时,设计器文件会得到一个明确的mycontrol.DropDownItems=50;行。起初,这并不重要。但是,如果稍后我在构造函数中将继承的类更改为DropDownItems=45;,这不会影响任何表单上的任何控件,因为所有这些设计器文件仍然

c# - 使用 JsonConverter 的 Json.NET 自定义序列化 - 如何获得 "default"行为

我的类DataType有一个JsonConverter。当在Json中使用纯字符串作为DataType类型的属性值时,我想做一些特殊处理。在值是“完整”对象的情况下,我想进行“正常”反序列化。这是我的尝试publicoverrideobjectReadJson(JsonReaderreader,TypeobjectType,objectexistingValue,JsonSerializerserializer){if(reader.Value!=null&&reader.ValueType==typeof(string)){returnsomeSpecialDataTypeInsta

c# - Visual C# 2010 速成版 : Specify default access modifier for new classes?

每当我使用VisualStudio2010ExpressC#创建新类时,它都会创建没有访问修饰符的新类。10次中有9次我希望我的新类(class)公开。如何让VisualStudio默认使用“public”修饰符创建空类模板? 最佳答案 诀窍是创建一个名为Class的新项模板。然后,当您执行“添加”>“新建类”时,默认情况下将选择您的模板,而不是内置的类模板。(我不确定这种行为是否得到保证,但它可以在我的机器上运行(TM)。)创建模板:右键单击您的项目并选择“添加”>“类”。您可以接受默认名称(Class1)-这只是一个临时文件。修