2017-10-19 93 views
0

我正在從C#函數調用CAPL函數,我期望在C#中獲得CAPL函數返回的值,但始終返回的值與沒有任何關係與我在CAPL功能中分配的一個。 有什麼我需要添加在我的CAPL函數,所以它可以傳遞正確的值到我調用它的C#函數? 這是我打電話是從C#的CAPL函數的返回值賦值給一個變量:從CAPL函數返回值到C#函數

int var = (int)this.SendRawDiagnosticF.Call(id, bytestosend[0], bytestosend[1], bytestosend[2], bytestosend[3], bytestosend[4], bytestosend[5], bytestosend[6], bytestosend[7]); 

這是CAPL函數的樣子:我不完全

int ReturnRXIDMessage(long ID, long DLC, long a, long b, long c, long d, long e, long f, long g, long h) 
{ 
    long o = 0; 
    if (messageID == ID + 0x40) 
    { 
    o = messageID; 
    } 
    return (o); 
} 

回答

0

確定你在做什麼,但要從.NET調用CAPL函數,你需要直接通過CaplFunctions.MyCaplFile.MyFunction(param); 調用函數。其餘的取決於你的設置。如果您正在使用vTESTstudio,則只需使用export關鍵字導出該功能。 如果您使用舊的.NET測試功能集,則需要在您的測試節點中引用CAPL文件。如果您使用Visual Studio,則可能還需要引用生成的類型庫。