Замените DLL, написанную в Delphi Prism, на C # без новой компиляции основного исполняемого файла. - PullRequest
0 голосов
/ 20 сентября 2019

Я хочу заменить ОДНУ DLL, написанную в Delphi Prism, на C #.Все остальные библиотеки DLL, а также исполняемый файл должны быть нетронутыми.Будет ли это работать вообще?

Я декомпилировал сборку в C # и скомпилировал снова.Если я открываю сборки в dotPeak, они выглядят одинаково.Однако, если я заменяю исходную библиотеку DLL на мою, на C #, я получаю ошибку:

Uncaught Exception: System.MissingMethodException: Method not found: "Void ClimateControl.TClimateData..ctor()"

TClimateData определяется в Prism следующим образом:

TClimateData = public record
  public
    tempSensor:Double;
    tempHeater:Single;
    humidity:Double;
  end;

Я экспортировалсборка в C # и соответствующий код в C #:

public struct TClimateData
{
public double tempSensor;
public float tempHeater;
public double humidity;
}
...