我知道这不是你典型的编程问题,但它让我烦恼......
我刚刚在两台Windows 8.1计算机上安装了F#3.1.1 Bundle:一个是32位,另一个是64位。
我有几个用于工作的F#脚本(.fsx文件),当我在32位系统中右键单击该文件时,它看起来像这样:
另一方面,在64位系统中它看起来像这样:
您可能会注意到"使用F#Interactive运行..."菜单项缺失,图标不同。我已经尝试修复Bundle,但它没有帮助。如何将上下文菜单条目输入64位Windows资源管理器?两个系统都是新安装的。
我希望答案不涉及一些可怕的注册表黑客......;)
答案 0 :(得分:2)
这似乎是安装程序的问题。他们正在添加" Run with F#Interactive ......"到VS 11处理程序,但不是12。
我希望答案不涉及一些可怕的注册表黑客攻击。
嗯,确实需要对注册表进行更改,我不会完全称之为hack。修复方法是将处理程序添加到此注册表路径:HKEY_CLASSES_ROOT\VisualStudio.fsx.12.0\shell
。
为此,请将此内容复制到名为foo.reg的文件中(只要扩展名为.reg,名称就不重要了)
Blah blah blah blah标准注册表免责声明,关于如何更改注册表可以做坏事,我不负责任,但为我工作。
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\VisualStudio.fsx.12.0\shell\openRunFsi]
@="Run with F# Interactive..."
[HKEY_CLASSES_ROOT\VisualStudio.fsx.12.0\shell\openRunFsi\command]
@="\"C:\\Program Files (x86)\\Microsoft SDKs\\F#\\3.0\\Framework\\v4.0\\Fsi.exe\" --quiet --exec \"%1\""
保存,然后双击以导入注册表项。这解决了我的问题。