Error: C4772 and Error:C2664 with HPC API sample code ...

Beantwortet Error: C4772 and Error:C2664 with HPC API sample code ...

  • 2009年5月15日 7:24
     
     
    Hi all:

    I am studying the HPC API (c++), therefore I install HPC Pack 2008 SDK (x86).

    I copy the sample code from http://msdn.microsoft.com/en-us/library/cc853436(VS.85).aspx

    I use VS2005 to compile the code, and got the following errors

    1>------ Rebuild All started: Project: GetNodeInCluster, Configuration: Release Win32 ------
    1>Deleting intermediate and output files for project 'GetNodeInCluster', configuration 'Release|Win32'
    1>Compiling...
    1>main.cpp
    1>.\main.cpp(11) : error C4772: #import referenced a type from a missing type library; '__missing_type__' used as a placeholder
    1>.\main.cpp(189) : error C2664: 'ISchedulerNode::get_JobType' : cannot convert parameter 1 from 'JobType *__w64 ' to '__missing_type__ *'
    1>        Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
    1>.\main.cpp(283) : error C2664: 'ISchedulerNode::get_State' : cannot convert parameter 1 from 'NodeState *__w64 ' to '__missing_type__ *'
    1>        Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
    1>.\main.cpp(379) : error C2664: 'ISchedulerCore::get_TaskId' : cannot convert parameter 1 from 'ITaskId **__w64 ' to '__missing_type__ **'
    1>        Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
    1>Build log was saved at "file://d:\HPC_practice\GetNodeInCluster\Release\BuildLog.htm"
    1>GetNodeInCluster - 4 error(s), 0 warning(s)
    ========== Rebuild All: 0 succeeded, 1 failed, 0 skipped ==========

    I have added the include dir: C:\Program Files\Microsoft HPC Pack 2008 SDK\Lib\i386 where the Microsoft.Hpc.Scheduler.tlb and Microsoft.Hpc.Scheduler.Properties.tlb are located.

    My OS is Windows XP Professional 32bit


    thank you.

    regards,

    Seifer

全部回复

  • 2009年5月15日 23:47
     
     建议的答复
    Hey Seifer,
    I believe this is a known issue with the SDK that should be fixed when we release our first Service Pack (coming soon!).  In the meantime, our COM API developer says it should actually work if you just compile it a second time (a strange workaround, I know).

    Please let us know if that helps or not!

    Thanks,
    Josh
    -Josh
  • 2009年5月16日 7:45
     
     
    Hi Josh:

    If I compile again ...

    only
    >.\main.cpp(11) : error C4772: #import referenced a type from a missing type library; '__missing_type__' used as a placeholder
    is disappeared.


    I still got the error

    1>.\main.cpp(189) : error C2664: 'ISchedulerNode::get_JobType' : cannot convert parameter 1 from 'JobType *__w64 ' to '__missing_type__ *'
    1>        Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
    1>.\main.cpp(283) : error C2664: 'ISchedulerNode::get_State' : cannot convert parameter 1 from 'NodeState *__w64 ' to '__missing_type__ *'
    1>        Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
    1>.\main.cpp(379) : error C2664: 'ISchedulerCore::get_TaskId' : cannot convert parameter 1 from 'ITaskId **__w64 ' to '__missing_type__ **'
    1>        Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast


    thank you.

    regards,

    Seifer
  • 2009年7月7日 2:22
     
     
    Hi:

    After 2 months, is there any solution available ?

    thank you!

    regards,

    Seifer
  • 2009年7月17日 17:59
     
     建议的答复
    Seifer,
    We've released SP1 now.  Have you tried upgrading?  I've linked below to the Service Pack (install on your client and cluster nodes) and to the refreshed SDK.  These should include fixes to the problems you saw; please post again if you still have a problem.  Starting a new thread might be a good idea to make sure we see it :-)

    HPC SDK SP1- http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=3fe15731-b1b6-42de-b278-5ccd46c0863b
    HPC Pack SP1- http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=a78520f1-de82-4442-b273-2ff7327b9140

    Thanks!
    Josh
    -Josh
  • 2009年7月18日 4:26
     
     已答复
    Hi Josh, thank you very much.

    The sample code now works well !

    regards,

    Seifer
    • 已标记为答案 Seifer Lin 2009年7月18日 4:26
    •