`

VC++错误:error C2065: 'SHCreateDirectoryEx' : undeclared identifier

 
阅读更多

1。介绍
SHCreateDirectoryEx是window flatform下建立文件夹的函数,他的功能比CreateDirectory(Ex)大。如果创建文件夹目录有的中间目录不存在,SHCreateDirectoryEx可以建立,而CreateDirectory(Ex)则做不到这一点。
2。使用方法
要想使用SHCreateDirectoryEx,必须先安装windows2000 floatform SDK,或者从已经安装的些开发包的系统中,把需要的文件考过来,这样比较麻烦,所以还要去微软的网站上下载一个开发包安装为好。些函数最低的系统要求为windows2000和window Me.

假设的Flatform SDK安装在C:\PROGRAM FILES\MICROSOFT PLATFORM SDK\目录下
在VC6中编译程序时(其他的编译工具遇到情况,用类似的方法解决)
如果出现这种错误:
error C2065: \\'SHCreateDirectoryEx\\' : undeclared identifier
则打开工具栏Project->Setting.s..
出现配置窗口
选择C/C++
Category(分类)选择Preprocessor(预处理器)
在Additional include directories
添加C:\PROGRAM FILES\MICROSOFT PLATFORM SDK\INCLUDE

设置完成后
在程序中添加引入库
#pragma comment(lib, "C:\\Program Files\\Microsoft Platform SDK\\Lib\\shell32.lib")

----------------------------------------------自己的内容:------------------------------------------------------

由于我要编译的程序是公司的程序,所以也可以用如下的设置(我编译也成功了):

VC++6.0-》工程-》设置-》连接-》分类:常规-》对象/库模板-》

"C:\Program Files\Microsoft Platform SDK\Lib\shell32.lib" "C:\Program Files\Microsoft Visual Studio\VC98\Lib\UUID.LIB"

PS:这样设置,其实就是用SDk的”shell32.lib“而不用VC++自己的”shell32.lib“

------------------------------------------------------------------------------------------------------------------------
这样应该可以成功完成编译了。
3.函数使用
int SHCreateDirectoryEx(
HWND hwnd,
LPCTSTR pszPath,
SECURITY_ATTRIBUTES *psa
);
hwnd是窗口句柄,可以为NULL.
psa是安全属性设置项,可以为NULL.
pszPath要注意,这个路径必须是绝对路径. 比如c:\test, d:\hello, 不能写成test,也不能写成.\test这样的相对路径。

转载:http://xue23.blog.163.com/blog/static/9793442005725241450/

分享到:
评论

相关推荐

    解决error C2065: '_beginthreadex' :undeclared identifier

    在编译过程中遇到“Error C2065:'_beginthreadex':undeclared identifier”这一错误信息时,通常意味着编译器无法识别`_beginthreadex`函数,即该函数未被正确声明或包含。`_beginthreadex`是用于创建新线程的一个...

    将tc下的程序移植到vc中.pdf

    8. **错误提示:error C2065: 'EGA' : undeclared identifier 或 error C2065: 'EGAHI' : undeclared identifier** 解决办法:删除定义`int gdriver = EGA, gmode = EGAHI;`的代码,改用`initgraph(640, 480);`初始...

    最常见的VC++编译错误信息_fatal_error

    6. Error C2065:'IDD_MYDIALOG' : undeclared identifier 这是一个常见的编译错误,原因是“IDD_MYDIALOG”未声明过的标识符。解决方法是检查是否正确地声明了该标识符。 7. Error C2082:redefinition of formal...

    vc++6.0常见错误

    五、error C2065: 'xxxx' : undeclared identifier 错误编号:C2065 直译:标识符“xxxx”未定义。 错误分析:该错误可能是由于标识符“xxxx”没有定义或拼写错误。解决方法是检查变量名、函数名、类名等是否正确,...

    AD Undeclared identifier:GetCurrentProductBuild 【已解决】

    在使用AD运行Ultra Librarian脚本UL_Import.pas时,低版本的Altium Designer可能会遇到错误:Undeclared identifier:GetCurrentProductBuild。 这时,点击OK,再点击停止按钮。 使用{}将出现错误的地方注释掉,...

    VC 常见编译错误.pdf

    error C2065: ‘_bstr_t’ : undeclared identifier error MSB8008: 指定的平台工具集(v110)未安装或无效 error C2065: “CString”: 未声明的标识符 error C2664: “ATL::CStringT,StringTraits>::Remove”: 不能...

    最常见的20种VC++编译错误信息集合

    **错误信息**:error C2065: 'IDD_MYDIALOG': undeclared identifier **解释**:标识符 `IDD_MYDIALOG` 未声明。通常这意味着在使用资源ID之前没有正确地包含相应的资源头文件。 **解决方法**: - 包含包含资源ID的...

    c语言综合实验

    <... <body> <h1>Build Log --------------------Configuration: 综合...C:\Users\Silence\Documents\综合性实验\3、mian program\3、main program.cpp(13) : error C2065: 'drawmenu' : undeclared identifier

    C++程序编译中常见错误资料.pdf

    调试器错误信息:error C2065: 'cout' : undeclared identifier。 3. 变量未定义就直接使用 在 C++ 程序中,变量必须先声明定义,然后才能使用。如果变量未定义就直接使用,编译器将无法识别变量的类型和作用域。...

    VC++常见错误提示

    6. error C2065: 'IDD_MYDIALOG' : undeclared identifier 这是一种错误,发生在未声明标识符“IDD_MYDIALOG”时,通常是因为变量或函数没有声明。解决方法是检查变量或函数的声明是否正确。 7. error C2082: ...

    project.zip

    本代码参考“老狼Gh0st远程协助软件编写教程”,由于server端使用vc6.0编写时始终出现如下等错误:error C2065: 'IDC_HAND' : undeclared identifier

    常见的20种VC++编译错误信息集合

    6. **error C2065: 'IDD_MYDIALOG': undeclared identifier**:错误C2065表明编译器无法识别标识符`IDD_MYDIALOG`。这通常是因为相应的资源或头文件没有被正确包含。确保所有必要的资源文件和头文件都已包含在项目中...

    20种VC++编译错误信息

    error C2065: 'IDD_MYDIALOG': undeclared identifier **描述**:标识符`IDD_MYDIALOG`未声明。 **解决方案**: - 确保包含正确的资源文件或头文件。 - 确认资源ID已在资源脚本文件中定义。 #### 7. error C2082: ...

    Keil MDK 编译 ucOS-II 出现的警告和错误解决

    Keil MDK 编译 ucOS-II 出现的警告和错误解决 在使用 Keil MDK 编译 ucOS-II 时,可能会出现一些警告和错误。本文将总结这些问题的解决方法。 警告:A1876W:Use of '|' as a synonym for the :OR: operator is ...

    arp error C2065

    在编程过程中,我们时常会遇到编译错误,如"error C2065: 'PacketGetVersion' : undeclared identifier"。这个错误是C或C++编程中的常见问题,表示在当前作用域内未声明标识符`PacketGetVersion`。在深入探讨解决...

    C语言编程常见错误小结

    C语言是一种功能强大且灵活的编程语言,它的语法检查相对其他高级语言较为宽松,因此给程序员提供了很大的自由度,但也正因为这种灵活性,使得C语言的编程过程中容易出现一些常见的错误。以下是一些初学者常常遇到的...

    VC++常见错误一览表

    ##### error C2065: undeclared identifier 'IDD_MYDIALOG' 此错误表明使用了一个未声明的标识符。 - **解决方案**: - 确保所有标识符(如宏定义、变量等)都在使用前声明。 - 检查包含文件是否正确包含了定义该...

    VC中20种常见的编译错误信息

    2. **错误C2065:未声明的标识符**:这意味着编译器找不到你正在引用的变量、函数或类型。检查拼写和包含头文件,确保正确引入相关元素。 3. **错误C2143:语法错误,缺少分隔符**:这通常是因为括号、逗号、分号等...

    常见的21种VC++编译错误信息集合

    error C2065: 'IDD_MYDIALOG': undeclared identifier (未声明的标识符) - **错误解释**:编译器未找到标识符 `IDD_MYDIALOG` 的定义。 - **解决方案**:确认资源 ID 已经在资源文件或其他地方正确定义。 #### 7....

Global site tag (gtag.js) - Google Analytics