我用默认安装,请问都装了哪些东西?好象没有装vc的头文件和lib?是不是要手动把这些文件复制到vc的目录里?谢谢

解决方案 »

  1.   

    不需要!只用自己在
    Tools>Options>Directories>
    点击右边的“Show Directories”下拉框,
    Include Files 再在下面输入Dx9 的头文件
    Library Files 一样
      

  2.   

    我刚看了一下,原来程序已经自动填好了
    不过我刚刚听说,dx9sdk 2004不支持vc6是不是真的?我的就是dx9sdk2004和vc6
      

  3.   

    在VC中添加DSDK的路进即可。Tools>Options>Directories>中
      

  4.   

    当然支持,其实它就是一个API封装而已!呵呵,除非不是Windows!呵呵
      

  5.   

    路径我检查已经自动设置好了,我现在一编译dx9程序就出现很多link错误,请问是哪里的事?
    就是vc6 + dx9sdk 2004d3dx9.lib(cparse.obj) : error LNK2001: unresolved external symbol __ftol2
    d3dx9.lib(jidctflt.obj) : error LNK2001: unresolved external symbol __ftol2
    d3dx9.lib(cshaderprogram.obj) : error LNK2001: unresolved external symbol __ftol2
    d3dx9.lib(ccompiler.obj) : error LNK2001: unresolved external symbol __ftol2
    d3dx9.lib(jcdctmgr.obj) : error LNK2001: unresolved external symbol __ftol2
    d3dx9.lib(cbaseprogram.obj) : error LNK2001: unresolved external symbol __ftol2
    d3dx9.lib(cprogram.obj) : error LNK2001: unresolved external symbol __ftol2
    d3dx9.lib(psgpmesh.obj) : error LNK2001: unresolved external symbol __ftol2
    d3dx9.lib(cbuffer.obj) : error LNK2001: unresolved external symbol __ftol2
    d3dx9.lib(pngwrite.obj) : error LNK2001: unresolved external symbol __ftol2
    d3dx9.lib(pngrtran.obj) : error LNK2001: unresolved external symbol __ftol2
    d3dx9.lib(d3dxmath.obj) : error LNK2001: unresolved external symbol __ftol2
    d3dx9.lib(cimage.obj) : error LNK2001: unresolved external symbol __ftol2
    d3dx9.lib(cblt.obj) : error LNK2001: unresolved external symbol __ftol2
    d3dx9.lib(fxlvm.obj) : error LNK2001: unresolved external symbol __ftol2
    d3dx9.lib(cvsprogram.obj) : error LNK2001: unresolved external symbol ___security_cookie
    d3dx9.lib(cfxlprogram.obj) : error LNK2001: unresolved external symbol ___security_cookie
    d3dx9.lib(cshaderprogram.obj) : error LNK2001: unresolved external symbol ___security_cookie
    d3dx9.lib(cparse.obj) : error LNK2001: unresolved external symbol ___security_cookie
    d3dx9.lib(c30program.obj) : error LNK2001: unresolved external symbol ___security_cookie
    d3dx9.lib(cpslegacyprogram.obj) : error LNK2001: unresolved external symbol ___security_cookie
    d3dx9.lib(cpsprogram.obj) : error LNK2001: unresolved external symbol ___security_cookie
    d3dx9.lib(jcdctmgr.obj) : error LNK2001: unresolved external symbol ___security_cookie
    d3dx9.lib(trees.obj) : error LNK2001: unresolved external symbol ___security_cookie
    d3dx9.lib(cbaseprogram.obj) : error LNK2001: unresolved external symbol ___security_cookie
    d3dx9.lib(cprogram.obj) : error LNK2001: unresolved external symbol ___security_cookie
    d3dx9.lib(jdcoefct.obj) : error LNK2001: unresolved external symbol ___security_cookie
    d3dx9.lib(jdhuff.obj) : error LNK2001: unresolved external symbol ___security_cookie
    d3dx9.lib(jmemansi.obj) : error LNK2001: unresolved external symbol ___security_cookie
    d3dx9.lib(jchuff.obj) : error LNK2001: unresolved external symbol ___security_cookie
    d3dx9.lib(cpreprocessor.obj) : error LNK2001: unresolved external symbol ___security_cookie
    d3dx9.lib(ctokenize.obj) : error LNK2001: unresolved external symbol ___security_cookie
    d3dx9.lib(cassembler.obj) : error LNK2001: unresolved external symbol ___security_cookie
    d3dx9.lib(ccompiler.obj) : error LNK2001: unresolved external symbol ___security_cookie
    d3dx9.lib(ssefasttable.obj) : error LNK2001: unresolved external symbol ___security_cookie
    d3dx9.lib(d3dxmathx3d.obj) : error LNK2001: unresolved external symbol ___security_cookie
    d3dx9.lib(pngwutil.obj) : error LNK2001: unresolved external symbol ___security_cookie
    d3dx9.lib(pngrutil.obj) : error LNK2001: unresolved external symbol ___security_cookie
    d3dx9.lib(jder.obj) : error LNK2001: unresolved external symbol ___security_cookie
    d3dx9.lib(jerror.obj) : error LNK2001: unresolved external symbol ___security_cookie
    d3dx9.lib(pngerror.obj) : error LNK2001: unresolved external symbol ___security_cookie
    d3dx9.lib(d3dx9shader.obj) : error LNK2001: unresolved external symbol ___security_cookie
    d3dx9.lib(cimage.obj) : error LNK2001: unresolved external symbol ___security_cookie
    d3dx9.lib(ccodec.obj) : error LNK2001: unresolved external symbol ___security_cookie
    d3dx9.lib(cfile.obj) : error LNK2001: unresolved external symbol ___security_cookie
    d3dx9.lib(cpudetect.obj) : error LNK2001: unresolved external symbol ___security_cookie
    d3dx9.lib(cvsprogram.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
    d3dx9.lib(cfxlprogram.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
    d3dx9.lib(cshaderprogram.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
    d3dx9.lib(cparse.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
    d3dx9.lib(c30program.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
    d3dx9.lib(cpslegacyprogram.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
    d3dx9.lib(cpsprogram.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
    d3dx9.lib(jcdctmgr.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
    d3dx9.lib(trees.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
    d3dx9.lib(cbaseprogram.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
    d3dx9.lib(cprogram.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
    d3dx9.lib(jdcoefct.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
    d3dx9.lib(jdhuff.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
    d3dx9.lib(jmemansi.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
    d3dx9.lib(jchuff.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
    d3dx9.lib(cpreprocessor.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
    d3dx9.lib(ctokenize.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
    d3dx9.lib(cassembler.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
    d3dx9.lib(ccompiler.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
    d3dx9.lib(ssefasttable.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
    d3dx9.lib(d3dxmathx3d.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
    d3dx9.lib(pngwutil.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
    d3dx9.lib(pngrutil.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
    d3dx9.lib(jder.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
    d3dx9.lib(jerror.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
    d3dx9.lib(pngerror.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
    d3dx9.lib(d3dx9shader.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
    d3dx9.lib(cimage.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
    d3dx9.lib(ccodec.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
    d3dx9.lib(cfile.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
    d3dx9.lib(cpudetect.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
    Debug/3DmapEdit.exe : fatal error LNK1120: 3 unresolved externals
    Error executing link.exe.
      

  6.   

    哈哈,我也吃过这个亏,你要在设置INCLUDE目录时保证DIRECTX9的INCLUDE目录在第一行!!
      

  7.   

    就在第一行呀,就是最上面的一行,我都检查了,怎么回事?系统是xp, vc6  dx9sdk 2004
      

  8.   

    参考一下:
    学习VC++时经常会遇到链接错误LNK2001,该错误非常讨厌,因为对于
    编程者来说,最好改的错误莫过于编译错误,而一般说来发生连接错误时,
    编译都已通过。产生连接错误的原因非常多,尤其LNK2001错误,常常使人不
    明其所以然。如果不深入地学习和理解VC++,要想改正连接错误LNK2001非
    常困难。
      初学者在学习VC++的过程中,遇到的LNK2001错误的错误消息主要为:
      unresolved external symbol “symbol”(不确定的外部“符号”)。
      如果连接程序不能在所有的库和目标文件内找到所引用的函数、变量或
    标签,将产生此错误消息。一般来说,发生错误的原因有两个:一是所引用
    的函数、变量不存在、拼写不正确或者使用错误;其次可能使用了不同版本
    的连接库。
      以下是可能产生LNK2001错误的原因:
      一.由于编码错误导致的LNK2001。
      1.不相匹配的程序代码或模块定义(.DEF)文件能导致LNK2001。例如, 
    如果在C++ 源文件内声明了一变量“var1”,却试图在另一文件内以变量
    “VAR1”访问该变量,将发生该错误。
      2.如果使用的内联函数是在.CPP文件内定义的,而不是在头文件内定
    义将导致LNK2001错误。
      3.调用函数时如果所用的参数类型同函数声明时的类型不符将会产生
    LNK2001。
      4.试图从基类的构造函数或析构函数中调用虚拟函数时将会导致LNK2001。
      5.要注意函数和变量的可公用性,只有全局变量、函数是可公用的。
      静态函数和静态变量具有相同的使用范围限制。当试图从文件外部访问
    任何没有在该文件内声明的静态变量时将导致编译错误或LNK2001。
      函数内声明的变量(局部变量) 只能在该函数的范围内使用。
      C++ 的全局常量只有静态连接性能。这不同于C,如果试图在C++的
    多个文件内使用全局变量也会产生LNK2001错误。一种解决的方法是需要时在
    头文件中加入该常量的初始化代码,并在.CPP文件中包含该头文件;另一种
    方法是使用时给该变量赋以常数。
      二.由于编译和链接的设置而造成的LNK2001
      1.如果编译时使用的是/NOD(/NODEFAULTLIB)选项,程序所需要的运行
    库和MFC库在连接时由编译器写入目标文件模块, 但除非在文件中明确包含
    这些库名,否则这些库不会被链接进工程文件。在这种情况下使用/NOD将导
    致错误LNK2001。
      2.如果没有为wWinMainCRTStartup设定程序入口,在使用Unicode和MFC
    时将得到“unresolved external on _WinMain@16”的LNK2001错误信息。
      3.使用/MD选项编译时,既然所有的运行库都被保留在动态链接库之内,
    源文件中对“func”的引用,在目标文件里即对“__imp__func” 的引用。
    如果试图使用静态库LIBC.LIB或LIBCMT.LIB进行连接,将在__imp__func上发
    生LNK2001;如果不使用/MD选项编译,在使用MSVCxx.LIB连接时也会发生LNK2001。
      4.使用/ML选项编译时,如用LIBCMT.LIB链接会在_errno上发生LNK2001。
      5.当编译调试版的应用程序时,如果采用发行版模态库进行连接也会产
    生LNK2001;同样,使用调试版模态库连接发行版应用程序时也会产生相同的
    问题。
      6.不同版本的库和编译器的混合使用也能产生问题,因为新版的库里可
    能包含早先的版本没有的符号和说明。
      7.在不同的模块使用内联和非内联的编译选项能够导致LNK2001。如果
    创建C++库时打开了函数内联(/Ob1或/Ob2),但是在描述该函数的相应头
    文件里却关闭了函数内联(没有inline关键字),这时将得到该错误信息。
    为避免该问题的发生,应该在相应的头文件中用inline关键字标志内联函数。
      8.不正确的/SUBSYSTEM或/ENTRY设置也能导致LNK2001。
      其实,产生LNK2001的原因还有很多,以上的原因只是一部分而已,对初
    学者来说这些就够理解一阵子了。但是,分析错误原因的目的是为了避免错
    误的发生。LNK2001错误虽然比较困难,但是只要注意到了上述问题,还是能
    够避免和予以解决的。 
      

  9.   

    看看你的程序中是否包含了相关的Lib库!
      

  10.   

    1. Include file path add into the Include Directories of Visual Studio 6;
    2. Library file path also need to add into the Lib Directories of Visual Studio 6.
      

  11.   

    Tools->Options->Directories->Show Directories->Include Files调整路径的次序,把DX SDK的Include路径提到最前面,就可以了。
      

  12.   

    Visual Studio 6 IDE, Tools -> Options -> Directories,In "Show directories for" list box, select "Include files" and "Library files".Include is "..\DX9SDK\Include"
    Lib is "..\DX9SDK\Lib".
    (Fill it with your computer's path of DX9).It is better to install Microsoft SDK to instead of the old one which is bound to VS6.Enjoy it.
      

  13.   

    还是没有解决,请问还有没有别的可能?我把include和lib里的文件复制到vc的目录里也不行