我知道在 64 位版本的 Windows 上,“Program Files”文件夹用于 64 位程序,“Program Files (x86)”文件夹用于 32 位程序,但为什么这甚至是必要的?
我所说的“必要”并不是指“为什么微软不能做出任何其他设计决定?” 因为他们当然可以。相反,我的意思是,“为什么鉴于 64 位 Windows 的当前设计,32 位程序必须有一个与 64 位程序不同的顶级文件夹?” 换句话说,“如果我以某种方式避免重定向机制并强制所有内容都安装到真实的,会出现C:\Program Files\什么问题?”
有很多关于超级用户和其他地方的问题断言“一个用于 32 位程序,一个用于 64 位程序”,但我找不到任何原因。根据我的经验,32 位程序是否安装在正确的位置似乎并不重要。
Windows 是否以某种方式以不同的方式呈现出“Program Files (x86)”不足的程序?是否有说明确切显示安装在“Program Files (x86)”而不是“Program Files”中的程序有何不同?我认为微软不太可能在没有合法技术原因的情况下引入一个新文件夹。
我们最近从 SVN 切换到 Git,同时将我们的实时系统置于版本控制中(而不是本地检出和文件复制到实时)。
在分配给我的项目中,我们都访问同一个存储库,并将更改生效git pull。这会导致问题,因为我们的 Web 设计人员将更改推送到 VCS 中,而这些更改不应处于活动状态,但应处于 Web 测试环境中。
当其中一位开发人员投入使用时,他将获得所有(可能未完成的)更改。
我想过实时切换到一个额外的分支,然后合并更改的内容,但由于我缺乏 git 知识,我不知道该怎么做。
我的想法是:
git branch live) 中创建一个新分支。git
checkout master; git pull; git
checkout live)git merge master问题是切换到 master 或将所有内容直接拉入实时系统会导致问题,所以我宁愿避免这种情况。
有没有办法做到这一点,或者有没有更好的方法来管理 Live 系统(除了训练 webbies 不要推送未完成的东西)。
我正在使用这些.NET Framework类来获取我机器的 IP 地址。
Dns.GetHostAddresses(Dns.GetHostName())
Run Code Online (Sandbox Code Playgroud)
我有一个 VirtualBox 适配器,它同时具有 IPv4 和 IPv6 地址。使用 .NET 代码,我将 IPv6 地址作为fe80::71a3:2b00:ddd3:753f%16
注意到末尾的 %16 了吗?
但是,如果我使用相同的查询WMI,我得到的地址为'fe80::71a3:2b00:ddd3:753f'
那么,%16 有什么特殊意义吗?
编辑:
我只是对此有更多的观察。它们与斯蒂芬詹宁斯在他的回答中所说的非常吻合。
我安装了 Vmware 以查看它发出的 IPv6 地址。地址是:fe80::3dd0:7f8e:57b7:34d5%19
fe80::b059:65f4:e877:c40%20
显然,% 之后的数字不是某种十六进制表示。我使用 Wmi 检查了网络适配器的所有可用属性,发现这些数字与每个网络适配器的 InterfaceIndex 属性完全相同。根据MSDN,它唯一标识每个网络适配器,这个属性是在 Vista 中引入的。
仍然让我感到困惑的是,为什么 IPAddress 类允许您以该格式创建 IP 地址,除非它有效。斯蒂芬提供了答案。数字是范围 ID。IPAddress 有一个接受地址和范围 ID 的构造函数。
哦,所有这三个网络适配器都是本地链接。通过 ipconfig 确认
凉爽的。那很有趣!!
每天,我发现自己在 Windows 命令提示符下需要访问已映射但已断开连接的网络驱动器。我还没有找到一个无需取消映射和重新映射即可重新连接此驱动器的命令(这会导致密码猜测游戏,因为我没有这些计算机)。我还希望能够编写此脚本,因此如果驱动器以某种方式断开连接,则每天晚上都会重新连接驱动器。
我目前最快的解决方案是:
start.”打开资源管理器,我知道这是一个小小的不便,但我经常通过缓慢的 VNC 或 PCAnywhere 连接来执行此操作,而通过 GUI 执行任何操作都很糟糕,所以我只是想知道是否有更好的解决方案。
克隆 Windows 系统时,众所周知,应该在创建映像之前运行 sysprep。这样,当机器启动时,它将为新环境重新配置自己:重新生成机器 SID、安装适当的驱动程序、创建初始用户帐户等。
我对Linux机器的经验较少,所以请问:在克隆Linux机器时应该采取什么样的克隆前或克隆后操作?我没有在网上找到任何关于它的提及,这是因为我看起来不够努力还是因为它不是 Linux 机器的必要步骤?我对 Ubuntu Server 和 Desktop 尤其感兴趣,因为我正在研究这些,但我不知道发行版对这个问题有多大影响。
显然,我想更改主机名,并且我不希望有可能需要以某种方式重新配置的每个软件的完整列表,但是是否有任何常见的系统设置或软件包在映像时需要重新配置?
注意:对于 Mountain Lion,请参阅:如何在 Mountain Lion 上使用 Homebrew Python 和 Homebrew MacVim?
我已经在 Mac OS X Snow Leopard 上安装了带有 Homebrew 的 Python 2.7。当我使用 安装 MacVim 时brew install macvim,它会使用 Python 支持进行编译,但会根据系统的 Python 安装进行编译。这可以通过运行以下命令看到:
:python print(sys.version)
2.6.1 (r261:67515, Jun 24 2010, 21:47:49)
[GCC 4.2.1 (Apple Inc. build 5646)]
Run Code Online (Sandbox Code Playgroud)
但是,Vim 似乎正在使用我路径中的 Python 可执行文件:
:python print(sys.executable)
/usr/local/bin/python
Run Code Online (Sandbox Code Playgroud)
这会导致使用vim_bridge 的Vim 脚本出现问题,例如vim-rst-tables(无法导入模块“re”)。
如何针对我的 Homebrewed Python 版本编译 Vim?
我最初问并回答了这个问题:How can I use the Homebrew Python version with Homebrew MacVim?
这些说明适用于使用 Xcode 4.0.1 和相关开发人员工具的 Snow Leopard。但是,它们似乎不再适用于使用 Xcode 4.4.1 的 Mountain Lion。
我的目标是让系统版本的 Python 完全保持不变,并且只将 PyPI 包安装到 Homebrew 的site-packages目录中。我想在MacVim中使用vim_bridge包,所以我需要针对 Python 的 Homebrew 版本编译 MacVim。
我编辑了 MacVim 公式以将这些添加到参数中:
--enable-pythoninterp=dynamic
--with-python-config-dir=/usr/local/Cellar/python/2.7.3/Frameworks/Python.framework/Versions/Current/lib/python2.7/config
Run Code Online (Sandbox Code Playgroud)
然后我使用以下命令安装:
brew install macvim --override-system-vim --custom-icons --with-cscope --with-lua
Run Code Online (Sandbox Code Playgroud)
但是,它似乎仍然以某种方式使用系统中的 Python 2.7.2。这对我来说似乎很奇怪,因为它似乎也在使用正确的可执行文件。
:python print(sys.version)
2.7.2 (default, Jun 20 2012, 16:23:33)
[GCC 4.2.1 Compatible Apple Clang 4.0 (tags/Apple/clang-418.0.60)]
:python print(sys.executable)
/usr/local/bin/python
$ /usr/local/bin/python --version
Python 2.7.3 …Run Code Online (Sandbox Code Playgroud) 自从我发现 Outlook 的“缓存交换模式”后,我就一直在使用它,而且我还在遇到的每台 PC 上都设置了它。我认为这是一个很棒的功能,可以提高每个 Outlook 用户的效率,我不明白为什么默认情况下它没有开启。
我的问题是 - 使用缓存 Exchange 模式有什么缺点吗?(除了它消耗更多空间的明显事实,我现在不认为这是一个大问题)
突然,在我管理的 Windows Vista Business 工作站上,Windows 打印后台处理程序服务消耗了超过 1GB 的内存。
今天早上我接到用户无法打印的电话。我发现控制面板中的打印机小程序中缺少所有打印机。我重新启动了机器,起初打印机仍然不见了,但几分钟后(我的头撞在墙上)它们突然出现了。
我不再担心它,直到今天晚些时候它再次发生在同一个工作站上。
据我所知,计算机上没有任何变化。没有添加新的打印机,没有安装新的打印驱动程序,也没有使用新的软件。
我尝试清除从今天早上开始确实有四个打印作业的假脱机文件夹 (C:\Windows\System32\spooler\printers),但在重新启动假脱机服务后问题仍然存在。启动服务时,它开始使用 824 KB 的内存,然后在大约 20 秒后开始每秒增加大约 10MB,直到稳定在 1.8GB 左右。
现在我正在逐个删除打印机并重新启动它们之间的假脱机程序。(这很有趣,因为每次我重新启动假脱机程序时,我都必须等待假脱机程序再次消耗 1.8GB,然后才能删除下一个)。所有真正的打印机都被删除了,只剩下 Fax、XPS 打印机和 Quicken PDF 打印机。我正在尝试删除所有驱动程序,发现有一个我们不再使用的打印机驱动程序拒绝删除。它说打印机正在使用中。打印机是 HP Color LaserJet 3500。
我已经尝试了我能找到的所有解决方案来删除该打印驱动程序(重命名驱动程序 unidrv.dll 然后重新启动假脱机程序、重新启动等)我的下一步是开车到那里并以安全模式启动并尝试在那个状态,但任何其他可以节省我驱动器的方法都会很棒。
我有兴趣详细了解 /System 和 /Library 下每个文件夹的用途。
有些比其他的更明显。/System/Library/Fonts 是系统的一组基本字体,/Library/Fonts 是系统范围内可用的任何其他字体。但是 Frameworks 和 PrivateFrameworks 之间有什么区别?我可以对 /Library/Receipts 下的包做任何事情吗?如果我安装一个新的应用程序,我可以在 /Library 下的哪个位置找到该应用程序的不同依赖项(框架、扩展,还有什么?)
我想我真的只是在寻找 /System 和 /Library 下每个标准文件夹的列表,以及关于它的用途和可能在里面找到什么的几句话。