2012-05-09 132 views
0

我已成功編譯和構建Visual C++ 6.0的c/C++項目到dll。但是當我在windwos 7 64bit os上轉換爲visual C++ 2010時,它出現了許多錯誤.source代碼是將項目從vc 6.0轉換爲vc 2010時出現錯誤

typedef struct {         
    int    _entID   ; /* Entity ID     */ 
    int    _recID   ; /* Recode No.     */ 
    int    _Nmbr   ; /* 畫像番號   0020:0013 */ 
    int    _Clmns   ; /* マトリクス X  0028:0011 */ 
    int    _Rws   ; /* マトリクス Y  0028:0010 */ 
    int    _ImagCnt  ; /* 複數フレーム數 0028:0008 */ 
    char    _Type[ 68 ]  ; /* 畫像タイプ  0008:0008 */ 
    char    _cUID[ 68 ]  ; /* クラス UID  0004:1510 */ 
    char    _sUID[ 68 ]  ; /* SOP UID  0008:0018 */ 
    char    _pathNm[ 128 ] ; 

    char    *_sptr   ;*****error at line***** 
    int    _xsiz   ;// 
    int    _ysiz   ; /* "   Y サイズ  */ 
             /*      @2.01 */ 
    char    _SpcSet[ 20 ] ; /* Specific Char  0008:0005 */ 
             /*      @2.30 */ 
    char    _SpcSet[ 64 ] ; /* Specific Char  0008:0005 */ 
    }     DDIR_IMAG_INF ; /*        */' 

當構建於2010年05 VC它出現許多類似的錯誤是這樣的: 錯誤1 d:\ DXR-MLS \程序\ dicm_dir_tool.dll \源\ dicm_dir_tool \包括\ dicm_dir_tool_dll.h錯誤C2059:語法錯誤:';' 的Visual C++ 6.0項目與評論ANSII項目是日本,使用windows系統的某些DLL和圖書館,在Windows XP中建立成功的32位 幫我

+0

這是爲什麼你應該總是給你的變量**描述性的名稱一個很好的對象教訓**。如果*你*不知道這些變量用於什麼,那麼*我們當然*不知道。 –

+0

至於解決您的問題,它可能會有所幫助[請閱讀您收到編譯器錯誤的文檔](http://msdn.microsoft.com/en-us/library/t8xe60cf(v = vs.100 )的.aspx)。 –

+0

最後一條評論的內容是什麼?這是否被VC6編譯器忽略? – harper

回答

0

字符串*_sptr*_uptr在Visual C++中似乎是「魔術」指針類型。我搜索了MSDN和Google,但無法找到參考,但看起來您根本無法使用名爲_sptr的變量。根據this bug report,它們可能是保留的標識符。

注意,也有兩個字段具有相同的名稱:_SpcSet