您的位置:程序门 -> c/c++ -> c++ 语言



编译时关于错误c2039的问题


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


编译时关于错误c2039的问题
发表于:2008-01-20 12:18:13 楼主
我用visualstadio2005,写一个调用active   directory方法的程序。

已经将activeds.lib和acdiid.lib引入到参照库里了。

    #include       <windows.h>      
    #include       <iads.h>      
    #include       <activeds.h>      
    #include       <adshlp.h>      
main{
        iads*       pads=null;    
        hresult       hr;      
       
        coinitialize(null);      
        hr=adsgetobject(l"winnt://.",iid_iads,(void**)&pads)==s_ok);
        if(hr==s_ok){
                pads-> get("whencreated");
        }
}

编译的时候,出了c2039的错误,说get方法不是pads的member。可我在打-> 的时候,get的方法名可以弹出来让我选择,而且用右键点击查找get宣言的时候,也发现被包含在iads.h文件中,可不知道为什么编译不过。请高手不吝赐教。
发表于:2008-01-20 12:23:421楼 得分:0
是不是少了个参数呀?
virtual   /*   [id]   */   hresult   stdmethodcalltype   get(  
                        /*   [in]   */   bstr   bstrname,
                        /*   [retval][out]   */   variant   *pvprop)   =   0;
发表于:2008-01-20 13:15:592楼 得分:0
gets不是同一个gets,继承之后重载了,所以,楼上说的对。
发表于:2008-01-20 16:39:433楼 得分:0
怎么我看不懂啊!烦躁也!
发表于:2008-01-20 21:44:124楼 得分:0
恩,上面写的那个get的方法确实少了个参数,对不起,因为工程在单位里不让拿出来。我在单位写的是正确的。和参数无关。

在vc++和vb里面都实现了,我现在想不通的是,vc++都能编译,正常取得的代码为什么在c++里面编译不过去呢。而且都是平台函数和mfc没有什么关系呀?

发表于:2008-01-21 10:07:355楼 得分:0
参数不够的错误是这种错误提示么?"get方法不是pads的member"


快速检索

最新资讯
热门点击