Articles of Windows

如何在C#中与Windows Media Player交互

我正在寻找一种与独立完整版本的Windows Media Player进行交互的方法。 大多数情况下,我需要知道当前播放的曲目的path。 iTunes SDK使这非常简单,但不幸的是,没有任何方法可以用Windows Media Player来完成,至less在.Net(C#)中没有任何大量使用pinvoke的情况,这并不令我感到舒服。 谢谢 只是为了澄清:我不想在我的应用程序中embedded一个Wi​​ndows媒体播放器的新实例,而是控制/读取由用户分开启动的“真正的”完整版本的Windows媒体播放器

如何在Windows中使用Qt访问Postgresql

我正在开发一个使用QtRuby和PostgreSQL的应用程序。 我成功开发并在Linux中成功运行。 现在我想在Windows中运行相同的应用程序。 但是我无法连接到数据库(postgresql)。 我收到以下错误: QSqlDatabase: QPSQL driver not loaded QSqlDatabase: available drivers: QSQLITE QODBC3 QODBC

有什么办法强制一个进程的工作集在C + + 1GB?

如果我在C ++中使用下面的调用,我希望进程的WorkingSet永远不会低于100MB。 然而,即使我打这个电话,操作系统仍然把工作集重新调整到16MB。 将WorkingSet设置为100MB将通过消除软页面错误(请参见下图)而显着提高应用程序的速度。 我究竟做错了什么? SIZE_T workingSetSizeMB = 100; int errorCode = SetProcessWorkingSetSizeEx( GetCurrentProcess(), (workingSetSizeMB – 1) * 1024 * 1024), // dwMinimumWorkingSetSize workingSetSizeMB * 1024 * 1024, // dwMaximumWorkingSetSize, QUOTA_LIMITS_HARDWS_MIN_ENABLE | QUOTA_LIMITS_HARDWS_MAX_DISABLE ); // errorCode returns 1, so the call worked. (专家额外) 实验方法学 我编写了一个testingC ++项目来分配100MB的数据,使工作集超过100MB(在Process Explorer中查看),然后释放该内存。 但是,当我释放内存时,操作系统将WorkingSet重新设置为16MB。 如果你愿意,我可以提供我使用的testingC ++项目。 为什么Windows提供一个调用SetProcessWorkingSetSizeEx(),如果它不似乎工作? 我一定做错了什么。 下图显示了当绿线(工作集)从50MB下降到30MB时,软页面错误(红色尖峰)的数量急剧增加。 更新 最后,我们最终忽视了这个问题,因为它不会影响性能。 […]

如何在VB6中执行进一步的代码之前等待shell进程完成

我有一个小型的VB6应用程序,我使用Shell命令来执行程序。 我将程序的输出存储在一个文件中。 然后我读取这个文件,并使用VB6中的msgbox将输出放在屏幕上。 这是我的代码现在看起来像: sCommand = "\evaluate.exe<test.txt " Shell ("cmd.exe /c" & App.Path & sCommand) MsgBox Text2String(App.Path & "\experiments\" & genname & "\freq") 问题是VB程序使用msgbox打印的输出是文件的旧状态。 是否有一些方法来执行VB代码,直到我的shell命令程序完成,以便我得到输出文件的正确状态,而不是以前的状态?

我怎样才能#包含encryptionstring的文件?

我用MinGW / gcc在Windows上编写一个C应用程序。 我需要使用#include指令来包含一个包含encryptionstring的文件。 该string将在运行时解密。 我想要这样做,如果用hex编辑器查看可执行文件,string将不可见。 我试过这个,但是不行。 不过你明白了: char *hidden_str = #include "encrypted_text.dat" 那里可能有些非转义的东西让编译器感到困惑。 我不知道。 我不知道encryption后会发生什么。 如果有更好的办法,我愿意接受。

多平台的便携式python

我想在虚拟环境中的闪存驱动器上安装python,以便我可以在任何地方开发代码。 这是可以这样做,我可以在Windows / Mac / Linux电脑上使用我的闪存驱动器?

在Visual Studio中使用FFmpeg

我正在尝试在Visual Studio 2010中的C ++项目中使用FFmpeg。我想将这些库作为静态链接文件包含在内。 像libavcodec / api-example.c这样的简单程序在错误视图中编译时没有错误,也没有链接器错误。 但是,启动应用程序后出现一个消息框,说avutil-51.dll丢失。 你有什么提示如何解决这个问题? 我使用了http://ffmpeg.zeranoe.com/builds/的最新开发版本。 然后我指定include作为附加包含目录,avcodec.lib; avfilter.lib; avformat.lib; avutil.lib作为额外的依赖关系,lib作为附加的库目录。

subprocess拥有用于redirect其父进程的标准输出的文件

情景我有一个batch filea.bat,其中包含语句 A.exe >> a.txt Test.exe >> a.txt A.exe启动另一个exe说b.exe(通过_wpopen函数)并返回。 但redirectA.exe的输出后,a.txt的所有权似乎被转移到b.exe。 由于b.exe仍在运行,仍然拥有a.txt,因此test.exe无法将其stdoutredirect到a.txt。 B.exe无限期运行,不能等待它停止。 而且我也无法将输出redirect到多个文件。 由于这些exe执行是安装设置的一部分,因此日志应该是连续的,并且必须对单个文件执行 有这种情况下有任何可能的解决scheme? 我想在a.exe返回后文件a.text是免费的!

MFC CWinApp程序中的input框?

我需要一个UI程序中的input框,这个input框已经从CWinnApp类派生并使用了MFC。 我看到它是使用消息框,但我没有看到任何input框的例子…. 我该怎么做呢? (在C ++中使用Visual Studio 6.0) 谢谢。

winapi:CreateProcess但隐藏进程的窗口?

我正在使用CreateProcess来创build一个cmd.exe进程,它传递一个参数,它将执行并退出,这使得命令提示符在屏幕上闪烁。 我试图通过将STARTUPINFO结构wShowWindow设置为SW_HIDE来避免这种情况,但此参数似乎影响调用窗口,而不是执行进程的窗口。 有无论如何,你可以使用createprocess启动一个隐藏的视图的程序? 另外什么是适当的WINAPI标准的方式来获得环境variables?