У меня есть DLL (CliSiTef32I.dll), и мне нужно вызвать следующие методы на моем С# -коде:
//The DLL can be downloaded at http://54.197.252.236/se/CliSiTef32I.dll
long ConfiguraIntSiTefInterativoEx(
char* IPSiTef,
char* IdLoja,
char* IdTerminal,
short Reservado,
char* ParametrosAdicionais
)
long IniciaFuncaoSiTefInterativo(
long Funcao,
char* Valor,
char* CupomFiscal,
char* DataFiscal,
char* HoraFiscal,
char* Operador,
char* ParamAdic
)
Как я могу это сделать?
Это может сделать работу:
[DllImport("CliSiTef32I.dll")]
public static extern int ConfiguraIntSiTefInterativoEx (
byte[] IPSiTef,
byte[] IdLoja,
byte[] IdTerminal,
short Reservado,
byte[] ParametrosAdicionais)
[DllImport("CliSiTef32I.dll")]
public static extern int IniciaFuncaoSiTefInterativo (
long Funcao,
byte[] Valor,
byte[] CupomFiscal,
byte[] DataFiscal,
byte[] HoraFiscal,
byte[] Operador,
byte[] ParamAdic)
Я не совсем уверен в значении short
хотя. Если это 16-битная подпись int, это будет работать.
Кроме того, если 32-битный int, который вы возвращаете, действительно является bool, вы можете объявить возвращаемое значение как таковое.
cdecl
? И каковы параметрыchar*
. Это струны? Какая кодировка? ANSI? ASCII? UTF-8? Это входные параметры? Или они выходной? Что кажется маловероятным.