有没有办法以编程方式更改屏幕分辨率或启用/禁用Windows XP中的多个监视器?例如,在两台显示器上从一台显示器的1024x768更改为1280x104?我会对win32函数最感兴趣,但是任何可以绑定到Windows快捷方式的东西就足够了.
搞砸我的CMD shell怎么办?Windows XP Pro,打开一个cmd窗口并执行:
C:\>set tt = name
C:\>set tt
tt = name
C:\>echo %tt%
%tt%
C:\>echo %time%
14:13:28.67
Run Code Online (Sandbox Code Playgroud)
echo命令由于某种原因不起作用.我可以很好地回应内置变量.在另一台计算机上试用它,并按预期工作
windows cmd batch-file environment-variables windows-console
我有我的软件的v1和v2版本.v1使用注册表来保存设置,大量调用GetProfileInt等.v2现在使用sqlite db来保存设置.
我们目前正在开发这两个分支,并且正在将v1的新功能合并到v2分支.我们当前必须记住更新任何注册表调用以使用新的配置数据库,这已经错过了几次.
我想要的是在v2中使用任何GetProfile ...或WriteProfile ...函数时抛出编译器错误.
我们在Visual Studio 2010中使用C++.如果没有内置的东西,我可以使用脚本的输出以某种方式抛出编译器错误吗?
c++ compiler-errors visual-studio-2010 compiler-warnings visual-c++
对于使用Visual Studio 6用C++编写的大型应用程序,进入现代时代的最佳方式是什么?
我想采取渐进的方法,我们慢慢移动部分代码并将新功能编写到C#中,并将其编译成可以从遗留应用程序引用的库或DLL.
这是可能的,最好的方法是什么?
编辑:此时我们仅限于Express版本,我认为不允许使用我们当前应用程序中大量使用的MFC库.它也是一个相当大的应用程序,具有很多硬件依赖性,所以我不认为批量迁移是在卡片中.
Edit2:我们已经研究过在C#中编写COM包装的组件但是没有COM经验,这是可怕和复杂的.是否有可能生成一个带有直接C接口的C#dll,其中隐藏了所有托管优势?或者COM是必要的邪恶?
在MFC C++(Visual Studio 6)中,我习惯使用TRACE宏进行调试.是否有一个与win32相同的声明?
我有一个unicode文本文件的集合(从regedit导出),我想拉出所有带有特定文本的行.
我已经尝试过Grep for Windows和findstr,但两者似乎无法处理unicode编码.我的结果是空的,但是当我使用-v选项(显示不匹配的行)时,输出在每个字符之间显示NUL.
是否有任何免费选项可以在Windows中对Unicode文件执行简单的grep?
我有一个用C++(Visual Studio 6.0)编写的数据采集程序.有些客户希望从他们自己的定制软件或LabView控制软件.我想提出一个简单的API,我可以分发给他们的dll,并想了解如何入门的一些提示.这将是非常基本的,可能是4或5个命令.我的DAQ程序仍将在同一台机器上的自己的窗口中运行,我只想将其设置为从另一个程序控制.
我有一个在Windows 7上运行的数据采集应用程序,使用C++中的VC2010.一个线程是一个心跳,每隔0.2秒发送一次更改,以保持一些超时约为0.9秒的硬件.通常情况下,心跳呼叫需要10-20ms,并且线程会花费剩余的时间来休眠.
但偶尔会有1-2秒的延迟,硬件会暂时关闭.心跳线程在THREAD_PRIORITY_TIME_CRITICAL运行,正常优先级进程为15.我的其他线程都在正常优先级运行,虽然我使用了一个DLL控制一些其他硬件和与它开始于15水平运行多个线程的Process Explorer已经注意到了.
我无法追踪减速的来源,但我的应用程序中的其他theads在发生这种情况时会看到同样的延迟.我已经对心跳代码进行了几次优化,即使它非常简单,但偶尔也会发生故障.现在我想知道如果不为整个过程指定REALTIME_PRIORITY_CLASS,我是否可以将此线程的优先级提高到15以上.如果没有,我应该注意使用REALTIME_PRIORITY_CLASS有什么缺点吗?(除了这个心跳线程,应用程序的其余部分没有实时计时需求.)
(或任何人对如何追查这些减速...不知道任何想法如果源可能是在我的应用程序或其他地方的系统).
更新:所以我还没有真正尝试通过31进我AfxBeginThread电话,原来它忽略了价值,并设置线程正常优先级,而不是我用THREAD_PRIORITY_TIME_CRITICAL得到15.
更新:结果运行磁盘碎片整理程序是导致大量线程延迟的好方法.即使在运行在REALTIME_PRIORITY_CLASS THREAD_PRIORITY_TIME_CRITICAL(31级)的进程和线程的心跳似乎没有帮助.接下来要尝试的是调用AvSetMmThreadCharacteristics("专业音频")
更新:调度心跳线为"专业音响"确实工作增加超过15(底= 1,动态= 24)线程的优先级,但它似乎并没有做碎片整理时运行任何真正的区别.我已经能够将许多减速与磁盘碎片整理程序相关联,因此关闭了每周扫描.仍然无法解释一些延迟,所以我们将增加到5-10秒看门狗超时.
使用C++和MFC递归搜索文件的最简洁方法是什么?
编辑:这些解决方案是否能够通过一次通过使用多个过滤器?我想用CFileFind我可以过滤*.*然后编写自定义代码以进一步过滤到不同的文件类型.有什么东西提供内置的多个过滤器(即.*.exe,*.dll)?
编辑2:刚刚意识到一个明显的假设,我正在制作,这使我以前的编辑无效.如果我尝试使用CFileFind进行递归搜索,我必须使用*.*作为我的通配符,因为否则子目录将不匹配且不会发生递归.因此,无论如何都必须单独处理对不同文件扩展的过滤.
c++ ×6
windows ×5
winapi ×2
api ×1
batch-file ×1
c# ×1
c++-cli ×1
cmd ×1
debugging ×1
file-search ×1
grep ×1
labview ×1
mfc ×1
migration ×1
recursion ×1
resolution ×1
timing ×1
unicode ×1
visual-c++ ×1
visual-c++-6 ×1