草庐IT

C++项目

全部标签

c - VB6 - 如何通过 .tlb 文件将字符串传递给用 C 编写的 DLL

我正在开发一个用VB6编写的图形界面,我必须在其中调用某个用C编写的DLL中包含的函数。因为knownlimitation我必须实现trick这允许我以隐式方式加载此DLL。这可以创建一个IDL文件,用MIDL编译它并在VB6项目中引用生成的.tlb文件。问题是VB6字符串和C字符数组不匹配,所以我无法将它们传递(并取回)到DLL。C函数的原型(prototype)是:int__stdcallmyFunc(charfilename_in[],charfilename_out[],charErrMsg[]);我应该在IDL文件中写什么,我应该如何从VB6中调用它?谢谢。

c - 如何通过在 Windows 机器上安装 Cygwin 来使用 gcc?

我已经为我的netbeansIDE安装了cygwin包。我可以在netBeans项目中使用它。但现在我想在cmd提示符下使用gcc编译器。我该怎么做?在Linux中,我们打开一个终端并输入gccfilename.c然后编译。现在我想在Windows中使用Cygwin的gcc做同样的事情。我可以在cmd中输入gccfilename.c并编译吗?如果是,怎么办?编辑:在cmd中写入gcc--version我得到访问被拒绝编辑1:在C:驱动器中,我有一个名为Cygwin的文件夹,其中包含Cygwin.bat。当我运行它时,会打开一个新的提示符,当我在其中键入gccfilename.c时,它会

c# - VisualStudio 项目中的 obj/debug 是一个临时位置吗?

简而言之,我有一个单独的WCFVisualStudio项目,用于编译CLient和Contractdll。使用MS-BUILD(命令行)构建项目后,我有一个构建后的nant任务,将客户端和契约(Contract)dll复制到另一个位置。现在我可以更轻松地从obj/Debug文件夹中选择这些dll(因为它们只有CLient和Contractdll而没有它们的依赖项)。但是我听说obj/Debug文件夹是临时的..我们需要依赖bin/Debug来获取dll。是否有必要从bin/debug而不是obj/Debug中获取它,为什么? 最佳答案

c# - 如何使选中列表框中的项目变灰

我有一个显示多个项目的选中列表框。框中的某些项目应该被禁用但可见(取决于几个单选按钮的状态)。我已经能够通过使用ItemCheck事件处理程序禁用它们,这样您就无法选中或取消选中它们,所以这不是问题。我现在需要的是找到一种方法使项目变灰。我试过这个:myCheckedListBox.SetItemCheckState(index,CheckState.Indeterminate)这会使项目复选框变为灰色但已选中。我需要它是灰色的,并且可以选中或未选中,具体取决于项目的状态。有没有办法改变CheckedListBox中单个项目的外观 最佳答案

visual-studio-2010 - 此安装不支持项目 {BC8A1FFA-BEE3-4634-8014-F334798102B3}

我得到Projectisnotsupportbythisinstallation在VS2010Pro中打开项目时出错查看我看到向导了{BC8A1FFA-BEE3-4634-8014-F334798102B3}表示WindowsStoreApps(MetroApps)我应该安装什么来运行这个项目类型? 最佳答案 此类项目可以使用VisualStudio2012至2015版本打开。从VisualStudio2017开始,不再支持此类项目。https://www.visualstudio.com/en-us/productinfo/vs2

c++ - C++中的通用文件对话框和通用项目对话框之间的主要区别是什么?

我的问题是:通用文件对话框和通用项目对话框之间的主要区别是什么?MSDN只是说:StartingwithWindowsVista,theCommonItemDialogsupersedestheolderCommonFileDialogwhenusedtoopenorsaveafile.WerecommendthatyouusetheCommonItemDialogAPIinsteadoftheCommonFileDialogAPI.但它没有解释更改日志或它们之间的主要区别是什么?感谢您的帮助。 最佳答案 通用文件对话框只是一个自定

c - 0A 转换为 C 中的 0D0A

我必须使用C编写一个虚拟磁盘文件处理系统作为大学项目的一部分(我正在运行Windows),当我写入FAT表时遇到了一个问题,我试图创建一个FAT链包含对FATblock10(0A00)的引用,而是写入0D0A00。磁盘由1024个大小为1024的block组成,第一个block用于任意信息,第二和第三个block用于FAT,第四个block用于根目录,其余block用于更远的数据。FAT表定义为:fatentry_tFAT[MAXBLOCKS];Fatentry_t定义为:typedefshortfatentry_t;我使用以下方式访问它:typedefunionblock{datab

windows - 卸载以前的版本安装新版本的安装项目

我创建了一个安装项目并安装在windows系统中。在安装安装项目之前,我将设置设置为DetectNewInstallerVersion=true和RemovePreviousVersion=True我也是每次都换版本。但如果我重建安装项目然后再次安装msi文件,它不会覆盖现有文件,它也会在程序功能中创建一个新的应用程序。我想卸载以前的版本并安装新版本,而无需手动卸载。 最佳答案 经过多次试验和尝试,甚至通过阅读这个社区的回复,我试图给你一个比我找到的更完整的答案。1)右键单击​​您的解决方案项目,然后选择属性。在Applicatio

c++ - 如何在 Qt C++ 应用程序中显示带有大量小部件的可滚动列表作为项目?

目标:在Windows7、10下的Qt5C++应用程序中拥有一个可滚动的自定义小部件列表,数量达数千(可能更多)。问题:将窗口最小化到任务栏并再次恢复后,程序停止响应。虽然它不会崩溃。CPU使用率常量为25%。即使在等待几分钟后,GUI也不会再次响应。此外,通常会消耗大量内存(超过200M),我认为即使对于100kQLabels(每个QLabel大约2k)来说也太多了。Here是针对类似问题的一些建议解决方案,但我认为这些解决方案不适合我的情况。示例:下面的示例说明了这个问题。为了演示,使用了QLabels列表,但它可以是派生自QWidget的任何类。主窗口.h#ifndefMAINW

c - 在 Windows 上使用 C 将数据流式传输到声卡

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭7年前。Improvethisquestion作为大学项目的一部分,我必须进行一些信号处理,并想使用PC声卡输出结果。该软件必须用C语言编写,并且需要与Windows(最好是7和XP)一起工作。我找到了输出.wav和类似文件的代码示例,但我对连续输出数据而不是从文件输出感兴趣。尽管一些可靠的API似乎有自己的缓冲区处理方式,但输出数据很可能会以数组形式呈现。任何建议都很好,代码示例甚至最好的API也很好。我看过D