草庐IT

ProgramFiles

全部标签

windows - 根据批处理文件中的 IF ELSE 条件设置变量不同的值

我的目标是在x64机器上将%PF%变量设置为C:\ProgramFiles(x86)\MSBuild\,在x86机器上设置为C:\ProgramFiles\MSBuild\。我可以很容易地实现这种方式IFDEFINEDProgramFiles(x86)SETPF=%ProgramFiles(x86)%\MSBuild\IFNOTDEFINEDProgramFiles(x86)SETPF=%ProgramFiles%\MSBuild\但我想在单个IFELSE语句中完成此操作。那个IFDEFINEDProgramFiles(x86)(SETPF=%ProgramFiles(x86)%\MS

windows - 如何在 PATH 中包含 %ProgramFiles%?

根据thispost不可能在路径变量中包含%ProgramFiles%,因为Windows环境变量是按字母顺序解析的。但是,我需要能够从批处理文件中获取程序文件在PATH中的正确位置(它可以扩展,我只是不能将驱动器号硬编码到批处理文件中,因为它需要可移植).我该怎么做?编辑:为了回应下面的一些评论,这里有一些额外的信息:-对PATH的更改需要是永久性的。-SETX似乎只是将文字%programfiles%粘贴在路径变量中。 最佳答案 在系统级别从控制面板系统小程序手动编辑PATH时,无法扩展%ProgramFiles%。但是您当然可

ruby-on-rails - rake 中止!没有要加载的文件 -- 赶紧

我正在使用rails2.3.5,ruby1.8.7(2010-08-16patchlevel302)[i386-mingw32]我在windows机器上,该项目没有.gem文件,所以我使用rakegems:install和rakedb:create到上述步骤为止一切正常,但是当我运行rakedb:migrate--trace时,出现以下错误**Executeenvironmentrakeaborted!nosuchfiletoload--rushD:/programfiles/Ruby187/lib/ruby/site_ruby/1.8/rubygems/custom_require.

windows - 如何从查看 ProgramFiles (x86) 的命令行启动 IIS Express?

基本上就是这个问题。我尝试了几个选项:iisexpress/path:"C:\ProgramFiles(x86)\PathToMyApp"/port:9000iisexpress"/path:C:\ProgramFiles(x86)\PathToMyApp"/port:9000iisexpress/path:C:\ProgramFiles^^(x86^)\PathToMyApp/port:9000iisexpress"/path:C:\ProgramFiles(x86)\PathToMyApp"/port:9000iisexpress/path:C:\ProgramFiles%20(x

windows - 从 SFX 运行时批处理文件的行为不同

所以我写了一个批处理文件来将客户端转换为云服务,我从中看到了一些奇怪的行为。所以这基本上是在寻找一个特定的文件夹,无论它是否存在,它都使用GOTO继续前进。当我使用WinRAR将其压缩到SFX中并指示它运行批处理文件时,它永远不会检测到该文件夹​​,但是,当我运行批处理文件本身时,它总是会检测到该文件夹​​,无论它是否存在。几天来我一直在努力解决这个问题,但我只是不明白为什么会这样。@ECHOOffCD%~dp0GotoDisableLocal:DisableLocalIFEXIST"%ProgramFiles%\Server\"(GOTOServer)ELSE(GOTOConfig)

windows - 环境变量是否特定于语言?

我需要在组策略中设置一个脚本,以便我们在世界不同地区使用。%ProgramFiles%等环境变量是否特定于语言?我希望%ProgramFiles%的脚本可以在西类牙和法国使用,即使他们的语言是针对特定区域设置的。谢谢 最佳答案 没有。它们不是特定于语言的。当您使用%ProgramFiles%时,操作系统将检查%ProgramFiles%映射到的Windows注册表。此映射是在Windows安装期间完成的,因此使用占位符%ProgramFiles%您将拥有与语言/国家/地区无关的解决方案。

c# - 为什么 Microsoft.Build.Evaluation 在 64 位 PC 上将 $(ProgramFiles) 评估为 "c:\program files"?

我有一个C#项目文件(.csproj),其中包含对$(ProgramFiles)的引用。我使用的是64位Windows7。当我在VisualStudio2010中编译这个项目文件时,它会在c:\ProgramFiles(X86)中正确定位文件。如果我想变聪明,而是使用Microsoft.Build.Evaluation.ProjectCollection.LoadProject([projectfile]),试图在代码中构建它,它会评估$(ProgramFiles)错误地作为c:\ProgramFiles。知道问题的原因是什么吗? 最佳答案

windows - 将 64b 应用程序放入 ProgramFiles(x86) 是个坏主意吗?

我们正在发布应用程序,即32b,因此将其放入ProgramFiles(x86)目录。它有一个x64“插件”,作为一个单独的进程(服务)运行,现在我们将它部署到主应用程序的子目录中。该插件未部署在x86系统上。现在,问题是——这(在x86ProgramFiles中可以执行x64)不是一个坏主意吗?此解决方案是否会对(某事)产生负面影响?谢谢! 最佳答案 它没有负面影响,事实上,VisualStudio也会这样做(它将其64位native编译器安装到(x86)目录中)。只有当它是一个“真正的”64位应用程序时才会出现问题,该应用程序期望

c++ - x64 位 Windows 上的 ExpandEnvironmentStrings( ... ) 正在将 %programfiles% 扩展到 x86 路径

我有一个x86应用程序在x64版本的Windows10上运行。在我的应用中,我使用ExpandEnvironmentStrings(...)来扩展用户给定的值。但当变量为%programfiles%时,它会扩展为C:\ProgramFiles(x86)我是否需要做一些特殊的事情来让x86应用程序正确扩展程序文件变量?注意:当我在资源管理器中直接使用%programfiles%时,它会正确扩展到C:\ProgramFiles。我正在使用VisualStudio2015进行开发。 最佳答案 当32位应用程序扩展环境变量引用%Progra

windows - 从 WOW64 启动 Shell 链接 (LNK)

我们的32位应用程序通过ShellExecute启动WindowsLNK文件(Shell链接)。当它尝试“启动”一个指向64位二进制文​​件的链接(例如“开始”菜单中的“InternetExplorer(64位)”快捷方式)时,它总是以启动32位二进制文​​件告终。在内部,ShellExecute错误地解析了链接目标:LNK中有一个隐藏字段,其中包含FOLDERID_ProgramFiles。64位应用程序将此解析为64位程序文件目录,但32位应用程序不会。Wow64DisableWow64FsRedirection不会改变ShellExecute的这种行为。除了通过64位“蹦床”过程
12