Как импортировать net классов как источник файлов для использования в проекте?
Отсюда https://github.com/HaxeFoundation/HaxeManual/wiki/Haxe-C%23 я узнал:
Haxe может напрямую загружать файлы сборок .NET (.DLL) и преобразовать его определения типов для использования в качестве типов Haxe. Для того, чтобы загрузить .Net-сборки, использование-net-lib библиотеки.опция компилятора dll. Затем Haxe автоматически проанализирует типы, определенные в этом файле сборки, и сделает их доступными для импорта как типы Haxe.
Отлично, мне нужны импортные формы.файл DLL. Не haxe -net-lib C:WindowsMicrosoft.NETFrameworkv4.0.30319System.Windows.Forms.dll
и не haxelib -net-lib C:WindowsMicrosoft.NETFrameworkv4.0.30319System.Windows.Forms.dll
сделано что-то.
Тогда я нашел, что https://groups.google.com/forum/#! topic / haxelang / DS8AXeWxiTA . Парень использует
На Haxe -СР РКЦ -КС F:/_dev/CSTest2/CSTest2 -Д нетто-Вер=40 -Д Нетто-с std=с:WindowsМайкрософт.ЧистаярамкиВ4.0.30319 -главное -чистая-Либ доступности.dll@std-net-lib System.Рисование.dll@std-net-lib System.Окна.Формы.dll@std
Я полагаю, его компиляция.настройка файла hxml. Но... Его компилируют файл. Я все еще получаю ошибку от неизвестно " импорт cs.система.окна.формы.Форма; ". Так что его подобие должно уже существовать в моих исходных файлах до начала компиляции.
Вот моя текущая компиляция .hxml , который я пытался скомпилировать:
-main Main
-cp src
-cs bin
-D net-ver=40
-D -net-std=C:WindowsMicrosoft.NETFrameworkv4.0.30319
-net-lib C:WindowsMicrosoft.NETFrameworkv4.0.30319Accessibility.dll@std
-net-lib C:WindowsMicrosoft.NETFrameworkv4.0.30319System.Windows.Forms.dll@std
-net-lib C:WindowsMicrosoft.NETFrameworkv4.0.30319System.Drawing.dll@std
И получил огромное количество ошибок, подобных этому примеру:
C:WindowsMicrosoft.NETFrameworkv4.0.30319System.Windows.Forms.dll @ cs.система.окна.формы.ImageList (Finalize): 1: символ 0: недопустимое переопределение поля 'Finalize': class не имеет супер класса C:WindowsMicrosoft.NETFrameworkv4.0.30319System.Windows.Forms.dll @ уу.система.окна.формы.ImageList: 1: символ 0: определен в этом классе
Так где же я ошибаюсь? Или что я должен добавить / отредактировать, чтобы начать использовать Net Framework в проекте haxe?
1 ответ:
Ошибки финализатора, которые вы получаете, являются известной проблемой с
-net-lib
, см. #5241. К счастью, в октябре было исправлено, которое включено в Haxe 4.0.0-preview.2 . Исправление не включено в последнюю стабильную версию (3.4.4).