Olha-o como a função AR que chamar está tomando uma temperatura, convertendo a e então passando lhe para trás me o mesmo argumento. Isto indicaria que o primeiro argumento é realmente um ponteiro a um dobro em vez de um valor dobro. Tentar modificar sua indicação de DLLImport para ser como segue (anotar a referência adicionada antes do dobro):
[DllImport (“OP930M.DLL”)]
int extern de estática confidencial OP930_GetTemperature (tempC dobro da referência, unidades do int);