问题标签 [visual-c++-2005]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
344 浏览

c# - 从 C# 调用 C++ 代码

可能重复:
可能从 C# 调用 C++ 代码?

我有一个问题。我有一个项目需要我从我的 VS2008 C# 代码中调用其他人用 Visual C++ 6.0 编写的代码。我想知道是否有人知道如何做到这一点。谢谢

0 投票
0 回答
610 浏览

visual-studio-2005 - R6034,但真的不知道为什么

我对微软没有问题,但他们讨厌我,这是真的。我有一个用 Visual Studio 2005 编写的应用程序,它的构建工作正常(VS2005 SP1,Win XP SP3)。但我有另一台 PC,我想在其中运行它。当我尝试启动它时出现 R6034 错误,然后我单击重试,然后错误再次出现,然后再次重试,程序启动并正常工作。我不想再次看到此错误消息。

这台电脑的操作系统是 Win 7 (64bit)。我也安装了所需的 vcredist。我已经读到我必须使用我已经完成的清单来构建我的应用程序。我已经完成了链接器一个,并且我还嵌入了一个清单。我已将 Visual Studio 库中所有需要的 DLL 及其清单文件复制到 exe 所在的文件夹中,但仍然没有。

我真的很失望,因为我几乎尝试了所有东西。请,如果有人知道我可以尝试的任何东西,请帮助我。如果您需要更多信息,请告诉我。

提前致谢!

0 投票
1 回答
706 浏览

c++ - STL lower_bound not spec compliant

The following code doesn't compile in C++Builder 2009 or in Visual C++ 2005 when the macro _HAS_ITERATOR_DEBUGGING equals 1 but if commented out it will. It appears the lower_bound function isn't spec compliant. The library is swapping the arguments. Here's an excerpt form the spec. value should always be the second argument. Am I wrong?

NOTE: The test code wasn't designed to run. It was designed to illustrate the library bug.

C++ Spec excerpt

25.3.3.1.3

Returns: The furthermost iterator i in the range [first, last] such that for any iterator j in the range [first, i) the following corresponding conditions hold: *j < value or comp(*j, value) != false

Visual Studio error message

Msg: error C2664: 'double mike::operator ()(const double,const char *) const' : cannot convert parameter 1 from 'const char [1]' to 'const double'

File: c:\program files\microsoft visual studio 8\vc\include\xutility

Line No: 314

Test Code

0 投票
5 回答
3385 浏览

c++ - 链接器错误 LNK1120 和 LNK2001

我讨厌这些链接器错误,知道如何摆脱它们吗?

0 投票
1 回答
74 浏览

.net - Visual C++ 2005 中的向导

我正在尝试为我的一个新应用程序组合一个向导。我一直在网上搜索一个像样的教程,但我没有运气。我已经尝试过本教程本网站,但都没有为我工作。有谁知道一个好的起点吗?我正在使用 Visual C++ 2005 并使用 .NET 。我想创建一个遵循以下结构的向导:

  • 输入名称(编辑框)
  • 你确定要这样命名吗(确认)
  • 输入部件(两个列表框,您可以在其中添加和删除一个和另一个
  • 你确定你已经添加了所有的部分(确认框)

抱歉,如果解释得不好,我很乐意尝试澄清任何需要的额外细节,我基本上只需要一个好的起点。先感谢您。

0 投票
3 回答
2838 浏览

.net - 在 C++ .net 中关闭上一个表单框

我正在使用 Visual C++ 2005,并且正在创建一个具有各种形式的应用程序。我想要发生的是当打开一个新表单时关闭前一个表单。我确定这只是我需要添加的一行代码,但是对于这行新手我不知道那是什么。我要关闭的表单是 Form1.h。任何帮助将非常感激。

这是我当前的代码:

0 投票
2 回答
216 浏览

c++ - VS 2005 - 命令行程序崩溃

VS 2005 开发了一个命令行程序。它处理一些文件并创建一个输出文件。有一个输入文件会导致崩溃,但仅在某些情况下。如果程序使用命令行启动(发布或调试版本),它会在处理该文件期间崩溃。但是,如果它是从 VS 2005 启动的,按 F5(调试模式),它可以正常工作,不会崩溃并且结果是正确的。有什么提示吗?谢谢。

0 投票
1 回答
1236 浏览

c++ - “size_t”作为类型参数,未复制强制转换警告

我一直在尝试摆脱一些旧代码中的警告(必须使用 MSVC 2005,目前正在使用 32 位构建),但一直在努力摆脱size_tto unsigned intconversion 警告。我们有自己Array<T> 的增长数组的实现,它实现了一个

template<typename I> const T& at(const I i) const {return atImpl(i);}

方法。当被称为

size_t i = 10; myArray.at(i);

我收到conversion from 'size_t' to 'const unsigned int', possible loss of data警告。一种工作理论被理解Iunsigned int,这导致编译器在传递到时将size_t其转换/转换为(这将是不方便但可以接受的)。但是,我无法在最小工作示例(本文底部)和更复杂的最小示例中重现此警告。简单地转换参数以使警告消失并且足以满足我们的需要(根据合同,数字适合)unsigned intiatunsigned intunsigned int

  1. 我对Iunsigned int这样的调用中的理解是否正确(规范说“ A typedef-name 因此是另一种类型的同义词。A typedef-name 不会引入新类型”,typeid(size_t(1)).name()unsigned int 并且size_t似乎被typedef喂了)。换句话说,最小的例子应该还是不应该给出警告?据我所知,构建配置是相同的。
  2. 由于我们的代码给了我们警告而最小的例子没有,所以我必须忽略一些东西。尽管付出了很多努力,但我无法弄清楚是什么。想法?

谢谢

最小的例子:

0 投票
1 回答
522 浏览

c++ - 如何与父命名空间中的模板类成为朋友?

我正在努力让我的班级成为其父命名空间中模板的朋友。有人可以解释我做错了什么:

以下是我在 MSVC8 (Visual Studio 2005) 上的尝试及其错误:


错误 C2888: a::b::x: 符号不能在命名空间中定义c


错误 C2888: a::b::x: 符号不能在命名空间中定义c


错误 C2039: x: 不是a::b


我不能只包含包含的头文件,class x因为它取决于class y导致循环包含。

0 投票
3 回答
3691 浏览

visual-c++ - LNK1112 模块机器类型“X86”与目标机器类型“x64”冲突 (VC++ 2005)

我正在尝试使用以下步骤在 Visual Studio 2005 Professional 中构建一个空白的 64 位 C++ 应用程序:

  1. 创建一个新的 Win32 控制台应用程序项目
  2. 转到配置管理器,创建 x64 类型的新解决方案平台,从 Win32 复制设置
  3. 保存并构建

但是,我收到此错误:

LINK : fatal error LNK1104: cannot open file 'kernel32.lib'

因此,我尝试更新库目录以指向kernel32.lib

  1. 转到项目属性、链接器、常规、附加库目录并设置“C:\Program Files\Microsoft Visual Studio 8\VC\lib\amd64”
  2. 保存并构建

这给了我错误:

LINK : fatal error LNK1104: cannot open file 'user32.lib'

因此,我尝试更新库目录以指向user32.lib

  1. 转到项目属性、链接器、常规、附加库目录并添加“C:\Program Files\Microsoft SDKs\Windows\v7.1\Lib\x64”
  2. 保存并构建

但现在我得到了错误:

.\x64\debug\stdafx.obj : fatal error LNK1112: module machine type 'X86' conflicts with target machine type 'x64'

任何想法我做错了什么?