Mono

24xxx 程序員工具失敗:Mono 庫降級?其他選擇?

  • March 4, 2018

我使用 KEEProg_24xxx_03c 通過 USB 控制 EEPROM 程式器。這多年來一直很好。

但是,現在它抱怨:

$ mono ./KEEProg_03c.exe
WARNING: The runtime version supported by this application is unavailable.
Using default runtime: v4.0.30319

Unhandled Exception:
System.IO.FileNotFoundException: Could not load file or assembly 'System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' or one of its dependencies.
File name: 'System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'
[ERROR] FATAL UNHANDLED EXCEPTION: System.IO.FileNotFoundException: Could not load file or assembly 'System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' or one of its dependencies.
File name: 'System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'

mono自從我上次使用它以來,我很可能已經升級了。

聽起來好像mono不支持這個舊的二進製文件。我沒有原始碼,因此無法將其連結到較新的版本。

wine啟動程序,但 USB 訪問不起作用(“關於”抱怨:找不到設備)。

我有哪些選擇?有可以控制我的 24xxx 的 GNU/Linux 工具嗎?我可以降級mono或安裝舊的庫版本嗎?

KEEProg 通過 USB 連接。USB 設備被檢測為:

[1333363.114683] usb 3-2: new full-speed USB device number 33 using xhci_hcd
[1333363.248418] usb 3-2: New USB device found, idVendor=0403, idProduct=6001
[1333363.248423] usb 3-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[1333363.248426] usb 3-2: Product: FT232R USB UART
[1333363.248428] usb 3-2: Manufacturer: FTDI
[1333363.248430] usb 3-2: SerialNumber: A700f2Je
[1333363.250897] ftdi_sio 3-2:1.0: FTDI USB Serial Device converter detected
[1333363.250948] usb 3-2: Detected FT232RL
[1333363.251171] usb 3-2: FTDI USB Serial Device converter now attached to ttyUSB0

該設備看起來非常像這個(我找不到任何視覺差異):https ://sigma-shop.com/product/31/usb-24xxx-i2c-e-eprom-programmer-microchip-atmel.html

程式碼可以在這裡找到:https ://info.kmtronic.com/software/KEEPROG/KEEProg_24xx/KEEProg_24xxx_03c.zip

我需要執行時 v2.0.50727:

$ ikdasm KEEProg_03c.exe | head -n 2
// Metadata version: v2.0.50727

這個答案:https ://stackoverflow.com/questions/33508922/mono-on-macosx-the-runtime-version-supported-by-this-application-is-unavailab/33517383#33517383建議:

$ mono --runtime=2.0 ./KEEProg_03c.exe 

哪個有效。

引用自:https://unix.stackexchange.com/questions/428133