标签: visual-c++-6

2
推荐指数
1
解决办法
2487
查看次数

InterlockedExchange与InterlockedExchangePointer

InterlockedExchange和之间有什么区别InterlockedExchangePointer

if( 0 != InterlockedCompareExchange( ( void** ) &_myVariable
                                   , temp
                                   , 0
                                   ) )
Run Code Online (Sandbox Code Playgroud)

if( 0 != InterlockedCompareExchangePointer( ( void** ) &_myVariable
                                          , temp
                                          , 0
                                          ) )
Run Code Online (Sandbox Code Playgroud)

当量?

我必须将代码移植到VC6,后者不知道这些Interlocked[...]Pointer功能.

编辑:

根据我自己的经验,我知道VC6 非常多,并且没有人会再使用它了.

但是,我不是决策者,对原始问题的回答将受到高度赞赏.

c++ atomic visual-c++-6 interlocked

2
推荐指数
1
解决办法
2349
查看次数

C++ 98 中的部分模板专业化?

C++ 98 是否支持部分模板规范?

以下代码可以在 C++ 11 下正常编译,但不能在 Visual C++ 6.0 中编译。
所以我想知道语法是否需要略有不同,或者是否不支持:

#include <iostream>
#include <string>

template <typename A, typename B> class Foo
{
public:
    static void bar(A a, B b)
    {
        std::cout << "A";
    };
};

template <typename A> class Foo<A, std::string>
{
public:
    static void bar(A a, std::string b)
    {
        std::cout << "B";
    };
};

template <typename B> class Foo<std::string, B>
{
public:
    static void bar(std::string a, B b)
    {
        std::cout << "C";
    };
};

template <> class …
Run Code Online (Sandbox Code Playgroud)

c++ templates visual-c++-6 template-specialization c++98

2
推荐指数
1
解决办法
61
查看次数

Qt和VC ++ 6.0 IDE?

首先,我想知道是否应该同时使用Qt和Windows。如果是这样,我应该使用VC ++ 6.0 IDE还是另一个?

c++ windows user-interface qt visual-c++-6

1
推荐指数
1
解决办法
1254
查看次数

将vc6移植到vc2005/vc2008的优势?

我要求我的团队将我们的vc6应用程序移植到vc2005,他们准备分配一些时间来做同样的事情.现在他们需要知道移植的优势是什么.

我不知道他们真的明白遵守标准合规是什么意思.

帮我列出移植的优势.

我面临的问题是

1)没有标准容器的调试支持

2)无法使用boost库

3)我们使用大量的查询生成但使用非类型安全的CString格式函数

4)花费大量时间来解决vc6问题,例如>>

vector<vector<int>>
Run Code Online (Sandbox Code Playgroud)

在>>之间的空间

c++ porting visual-studio-2005 visual-c++-6 visual-studio-2008

1
推荐指数
2
解决办法
1287
查看次数

无法在VC++ 6中加载工作空间

我已将项目复制到新目录,现在工作区将不会加载到vc ++ 6 ide中.没有错误,只有没有工作空间.我已经对dsw和dsp文件进行了差异化,它们是相同的.

workspace visual-c++-6

1
推荐指数
1
解决办法
1298
查看次数

使用 Microsoft Visual C++ 6.0 解决 __imp__open 和其他类似命名函数的链接错误

使用 Microsoft Visual C++ 6.0 编译 C++ 时有时会出现这样的链接错误:

error LNK2001: unresolved external symbol __imp__close
error LNK2001: unresolved external symbol __imp__read
error LNK2001: unresolved external symbol __imp__lseek
error LNK2001: unresolved external symbol __imp__open

我使用谷歌搜索了很长时间但毫无结果后发现,我的修复是这样的:

不要禁用语言扩展。在“项目设置”对话框的“C/C++”选项卡中,确保未选中“禁用语言扩展”复选框。

函数 close、read、lseek、open 等不是 C 库的标准部分,并且使用#if !__STDC__in的条件编译会跳过这些声明<io.h>。如果您禁用语言扩展,就会发生这种情况。

c c++ visual-c++-6 linker-errors

1
推荐指数
1
解决办法
5035
查看次数

openGL窗口崩溃

我每次运行以下简单的代码输出窗口崩溃时都在Vc6中处理openGL

#include <stdio.h>
#include <gl/glut.h>
//#include <gl/glaux.h>

void display(void)
{

    glColor3f(255.0f,255.0f,255.0f);
    glBegin(GL_QUADS);
    glVertex3f(0.0f,0.0f,0.0f);
    glVertex3f(0.0f,5.0f,0.0f);
    glVertex3f(5.0f,5.0f,0.0f);
    glVertex3f(5.0f,0.0f,0.0f);
    glVertex3f(0.0f,0.0f,0.0f);
    glEnd();
    glFlush();
}

 void init(void)
 {
        glViewport(0,0,400,400);
       glMatrixMode(GL_PROJECTION);
    glLoadIdentity();
    gluPerspective(45.0,4/3,4.0,1000.0);
    glMatrixMode(GL_MODELVIEW);
    gluLookAt(2.0,2.0,2.0,1.0,2.0,1.0,0.0,1.0,0.0);
 }

int main(int argc, char *argv[])
{
    glutInit(&argc,argv);
    init();
    glutInitDisplayMode(GLUT_DOUBLE|GLUT_RGB|GLUT_DEPTH);
    glutInitWindowPosition(400,400);
    glutInitWindowSize(400,400);
    glutCreateWindow("Trial");
    glutDisplayFunc(display);
    glutMainLoop();
    return 0;

}
Run Code Online (Sandbox Code Playgroud)

我不知道出了什么问题任何boby请帮忙

opengl visual-c++-6

1
推荐指数
1
解决办法
525
查看次数

类向导中断时,将Timer(WM_TIMER)处理程序添加到Visual C++ 6.0中?

我有一个MFC Visual C++应用程序似乎无法在类向导中工作,但是,我有一个视图(CServerView),我想添加一个WM_TIMER事件处理程序.

我已经想出了如何打电话CWnd::SetTimer,CWnd::KillTimer但十多年来我没有做过的就是修改消息地图.我不确定我应该为我的CView子类修改的地图是ServerView.cpp文件的这部分,还是ServerView.h中的某些部分:

BEGIN_MESSAGE_MAP(CServerView, CListView)
    //{{AFX_MSG_MAP(CServerView)
    ON_COMMAND(ID_DRIVER_START, OnDriverStart)
    ON_UPDATE_COMMAND_UI(ID_DRIVER_START, OnUpdateDriverStart)
        ...
    // Standard printing commands
END_MESSAGE_MAP()
Run Code Online (Sandbox Code Playgroud)

这可能是一件微不足道的事情,但我面临的两个复杂问题是,关于这一点的在线文档都是针对最近的Visual Studio版本的,我在Visual C++ 6.0中坚持这样做

mfc visual-c++-6 visual-c++

1
推荐指数
1
解决办法
4469
查看次数

应用服务模式下CPrintDialog创建失败

我有一个自动打印报告的应用程序。我正在使用 CPrintDialog 来获取打印机 DC。

void CMyClass::PrintReport()
{
    CDC dc;
    CPrintDialog printDlg(FALSE);
    printDlg.GetDefaults ();
    ::DeleteDC( printDlg.m_pd.hDC );
    LPDEVMODE pDevMode = printDlg.GetDevMode();
    if(pDevMode)
    {
        pDevMode->dmOrientation = DMORIENT_LANDSCAPE;
        ::GlobalUnlock(pDevMode);
    }
    HDC hDC;
    if( (hDC = printDlg.CreatePrinterDC()) == NULL )
    {
        ::GlobalFree( printDlg.m_pd.hDevMode );
        ::GlobalFree( printDlg.m_pd.hDevNames );
        return;
    }
    ::GlobalFree( printDlg.m_pd.hDevMode );
    ::GlobalFree( printDlg.m_pd.hDevNames );
    dc.Attach(hDC);         // Attach a printer DC
    dc.m_bPrinting = TRUE;
    dc.SetMapMode(MM_LOENGLISH);
    /* 

        Printing Logic using dc
    */
}
Run Code Online (Sandbox Code Playgroud)

当我在控制台应用程序附带的调试模式下运行我的应用程序时,这很好用。

但是,当我将应用程序作为 Windows 服务运行时,CPrintDialog 创建失败。

我做错了什么吗?:( 请帮我。

注意:应用程序设计为在安装中作为服务运行。

printing mfc visual-c++-6

1
推荐指数
1
解决办法
512
查看次数