我意识到在正常情况下这将是完全不好的做法,但这仅适用于需要从条形码扫描仪(模拟键盘)输入的测试应用程序.问题是我需要在扫描时启动一些脚本,所以我需要窗口在我单击脚本运行它之后直接重新获得焦点.我尝试过使用Activate(),BringToFront(),Focus()以及一些Win32调用,如SetForegroundWindow(),Setcapture()和SetActiveWindow()...但是我能得到的最好的就是让任务栏项目开始闪烁告诉我它想要有焦点,但有些东西正在阻止它.顺便说一下,我在XP SP2上运行它并使用.NET 2.0.
这可能吗?
编辑:为了澄清,我通过在资源管理器中双击它们来运行脚本.所以我需要它从探险家和测试应用程序窃取焦点.
我不希望vim以任何特定于编码的方式解释我的数据.换句话说,当我在vim中时,我希望我的光标所在的字符对应于实际字节,而不是该字节的utf*(等)表示.
我需要使用vim来分析由其他人(使用其他软件)所做的Unicode转换错误引起的问题,所以我看到实际存在的内容非常重要.
例如,在Cygwin的vim中,我已经能够看到UTF-8 BOM
[文件数据开始]
太棒了.我认为这是一个UTF-8 BOM,如果我想知道每个字符的十六进制是什么,我可以将光标放在字符上并使用'ga'.
我最近有一台合适的Linux机器(Fedora).在/ etc/vimrc中,此行存在
set fileencodings = ucs-bom,utf-8,latin1
当我在这台机器上查看UTF-8 BOM时,BOM被完全隐藏.
当我将以下行添加到〜/ .vimrc时
设置fileencodings = latin1
我知道了
AA»Â¿
前3个字符是BOM(当ga用于它们时).我不知道最后3个字是什么.
有一次,我甚至看到UTF-8 BOM表示为"feff" - UTF-16 BOM.
无论如何,你看到我的问题.我需要在没有vim为我解释字节的情况下查看文件中的确切内容.我知道我可以使用xxd,od等,但vim作为分析工具一直非常方便.另外,我希望能够编辑文件并保存它们,而不会出现任何转换问题.
谢谢你的帮助.