diff --git a/Drivers/CH341SER/CH341M64.SYS b/Drivers/CH341SER/CH341M64.SYS new file mode 100644 index 0000000..037b442 Binary files /dev/null and b/Drivers/CH341SER/CH341M64.SYS differ diff --git a/Drivers/CH341SER/CH341PORTS.DLL b/Drivers/CH341SER/CH341PORTS.DLL new file mode 100644 index 0000000..ad20882 Binary files /dev/null and b/Drivers/CH341SER/CH341PORTS.DLL differ diff --git a/Drivers/CH341SER/CH341PORTSA64.DLL b/Drivers/CH341SER/CH341PORTSA64.DLL new file mode 100644 index 0000000..46ef96f Binary files /dev/null and b/Drivers/CH341SER/CH341PORTSA64.DLL differ diff --git a/Drivers/CH341SER/CH341PT.DLL b/Drivers/CH341SER/CH341PT.DLL new file mode 100644 index 0000000..dc260be Binary files /dev/null and b/Drivers/CH341SER/CH341PT.DLL differ diff --git a/Drivers/CH341SER/CH341PTA64.DLL b/Drivers/CH341SER/CH341PTA64.DLL new file mode 100644 index 0000000..2aba839 Binary files /dev/null and b/Drivers/CH341SER/CH341PTA64.DLL differ diff --git a/Drivers/CH341SER/CH341S64.SYS b/Drivers/CH341SER/CH341S64.SYS new file mode 100644 index 0000000..4d1bb3b Binary files /dev/null and b/Drivers/CH341SER/CH341S64.SYS differ diff --git a/Drivers/CH341SER/CH341S98.SYS b/Drivers/CH341SER/CH341S98.SYS new file mode 100644 index 0000000..cc34a22 Binary files /dev/null and b/Drivers/CH341SER/CH341S98.SYS differ diff --git a/Drivers/CH341SER/CH341SER.CAT b/Drivers/CH341SER/CH341SER.CAT new file mode 100644 index 0000000..3163a78 Binary files /dev/null and b/Drivers/CH341SER/CH341SER.CAT differ diff --git a/Drivers/CH341SER/CH341SER.INF b/Drivers/CH341SER/CH341SER.INF new file mode 100644 index 0000000..d85b678 --- /dev/null +++ b/Drivers/CH341SER/CH341SER.INF @@ -0,0 +1,285 @@ +; CH341SER.INF +; Driver for CH340/CH341 (USB=>SERIAL chip) V3.8 +; WDM&VXD for Windows 98/Me/2000/XP/Vista/7/8/8.1/10/11/SERVER 2003/2008/2012/2016/2019/2022 +; Copyright (C) WCH 2001-2023 +; + +[Version] +Signature = "$Chicago$" +Class = Ports +ClassGuid = {4D36E978-E325-11CE-BFC1-08002BE10318} +Provider = %WinChipHead% +DriverVer = 02/11/2023, 3.8.2023.02 +CatalogFile =CH341SER.CAT + + +[ControlFlags] +ExcludeFromSelect = USB\VID_1A86&PID_7523 +ExcludeFromSelect = USB\VID_1A86&PID_5523 +ExcludeFromSelect = USB\VID_1A86&PID_7522 +ExcludeFromSelect = USB\VID_1A86&PID_E523 +ExcludeFromSelect = USB\VID_4348&PID_5523 +ExcludeFromSelect = USB\VID_4348&PID_5523&REV_0250 +ExcludeFromSelect = USBSERPORT\SER5523 +ExcludeFromSelect = CH341PORT\SER5523 + +[Manufacturer] +%WinChipHead% = WinChipHead,NT,NTamd64,NTia64,NTARM64 + +[WinChipHead] +%CH340SER.DeviceDesc% = CH341SER_Install, USB\VID_1A86&PID_7523 +%CH341ASER.DeviceDesc% = CH341SER_Install, USB\VID_1A86&PID_5523 +%CH340KSER.DeviceDesc% = CH341SER_Install, USB\VID_1A86&PID_7522 +%CH330SER.DeviceDesc% = CH341SER_Install, USB\VID_1A86&PID_E523 +%CH341SER.DeviceDesc% = CH341SER_Install, USB\VID_4348&PID_5523 +%CH340SER.DeviceDesc% = CH341SER_Install, USB\VID_4348&PID_5523&REV_0250 +%CH341S98.DeviceDesc% = CH341S98_Install, USBSERPORT\SER5523 +%CH341S98.DeviceDesc% = CH341S98_Install, CH341PORT\SER5523 + +[WinChipHead.NT] +%CH340SER.DeviceDesc% = CH341SER_Install.NT, USB\VID_1A86&PID_7523 +%CH341ASER.DeviceDesc% = CH341SER_Install.NT, USB\VID_1A86&PID_5523 +%CH340KSER.DeviceDesc% = CH341SER_Install.NT, USB\VID_1A86&PID_7522 +%CH330SER.DeviceDesc% = CH341SER_Install.NT, USB\VID_1A86&PID_E523 +%CH341SER.DeviceDesc% = CH341SER_Install.NT, USB\VID_4348&PID_5523 +%CH340SER.DeviceDesc% = CH341SER_Install.NT, USB\VID_4348&PID_5523&REV_0250 + +[WinChipHead.NTamd64] +%CH340SER.DeviceDesc% = CH341SER_Inst.NTamd64, USB\VID_1A86&PID_7523 +%CH341ASER.DeviceDesc% = CH341SER_Inst.NTamd64, USB\VID_1A86&PID_5523 +%CH340KSER.DeviceDesc% = CH341SER_Inst.NTamd64, USB\VID_1A86&PID_7522 +%CH330SER.DeviceDesc% = CH341SER_Inst.NTamd64, USB\VID_1A86&PID_E523 +%CH341SER.DeviceDesc% = CH341SER_Inst.NTamd64, USB\VID_4348&PID_5523 +%CH340SER.DeviceDesc% = CH341SER_Inst.NTamd64, USB\VID_4348&PID_5523&REV_0250 + +[WinChipHead.NTia64] +%CH340SER.DeviceDesc% = CH341SER_Inst.NTia64, USB\VID_1A86&PID_7523 +%CH341ASER.DeviceDesc% = CH341SER_Inst.NTia64, USB\VID_1A86&PID_5523 +%CH340KSER.DeviceDesc% = CH341SER_Inst.NTia64, USB\VID_1A86&PID_7522 +%CH330SER.DeviceDesc% = CH341SER_Inst.NTia64, USB\VID_1A86&PID_E523 +%CH341SER.DeviceDesc% = CH341SER_Inst.NTia64, USB\VID_4348&PID_5523 +%CH340SER.DeviceDesc% = CH341SER_Inst.NTia64, USB\VID_4348&PID_5523&REV_0250 + +[WinChipHead.NTARM64] +%CH340SER.DeviceDesc% = CH341SER_Inst.NTARM64, USB\VID_1A86&PID_7523 +%CH341ASER.DeviceDesc% = CH341SER_Inst.NTARM64, USB\VID_1A86&PID_5523 +%CH340KSER.DeviceDesc% = CH341SER_Inst.NTARM64, USB\VID_1A86&PID_7522 +%CH330SER.DeviceDesc% = CH341SER_Inst.NTARM64, USB\VID_1A86&PID_E523 +%CH341SER.DeviceDesc% = CH341SER_Inst.NTARM64, USB\VID_4348&PID_5523 +%CH340SER.DeviceDesc% = CH341SER_Inst.NTARM64, USB\VID_4348&PID_5523&REV_0250 + +[CH341SER_Install] +DelFiles = CH341S98.DelFiles.SYS +CopyFiles = CH341SER.CopyFiles.SYS, CH341SER.CopyFiles.DLL +AddReg = CH341SER.9X.AddReg, CH341SER.AddReg + +[CH341SER_Install.NT] +CopyFiles = CH341SER.NT.CopyFiles.SYS, CH341SER.CopyFiles.DLL +AddReg = CH341SER.NT.AddReg, CH341SER.AddReg + +[CH341SER_Install.NT.HW] +AddReg = CH341SER.NT.HW.AddReg + +[CH341SER_Inst.NTamd64] +CopyFiles = CH341SER.NT.CopyFiles.SYSA64, CH341SER.CopyFiles.DLLA64, CH341SER.CopyFiles.WOWDLL +AddReg = CH341SER.NTAMD64.AddReg, CH341SER.AddReg + +[CH341SER_Inst.NTamd64.HW] +AddReg = CH341SER.NT.HW.AddReg + +[CH341SER_Inst.NTia64] +CopyFiles = CH341SER.NT.CopyFiles.SYSI64,CH341SER.CopyFiles.DLLA64 +AddReg = CH341SER.NT.AddReg, CH341SER.AddReg + +[CH341SER_Inst.NTia64.HW] +AddReg = CH341SER.NT.HW.AddReg + +[CH341SER_Inst.NTARM64] +CopyFiles = CH341SER.NT.CopyFiles.SYSM64,CH341SER.CopyFiles.DLLA64, CH341SER.CopyFiles.WOWDLL +AddReg = CH341SER.NTARM64.AddReg, CH341SER.AddReg + +[CH341SER_Inst.NTARM64.HW] +AddReg = CH341SER.NT.HW.AddReg + +[CH341S98_Install] +DelFiles = CH341S98.DelFiles.SYS +CopyFiles = CH341S98.CopyFiles.VXD, CH341SER.CopyFiles.SYS +AddReg = CH341S98.9X.AddReg, CH341S98.AddReg + +;[CH341S98_Install.NT] + +[CH341S98.DelFiles.SYS] +CH341S98.SYS, , , 1 + +[CH341SER.CopyFiles.SYS] +CH341S98.SYS, , , 2 + +[CH341SER.NT.CopyFiles.SYS] +CH341SER.SYS, , , 2 + +[CH341SER.NT.CopyFiles.SYSA64] +CH341S64.SYS, , , 2 + +[CH341SER.NT.CopyFiles.SYSI64] +;CH341I64.SYS, , , 2 + +[CH341SER.NT.CopyFiles.SYSM64] +CH341M64.SYS, , , 2 + +[CH341S98.CopyFiles.VXD] +CH341SER.VXD, , , 2 + +[CH341SER.CopyFiles.DLL] +CH341PT.DLL, , , 2 +CH341PORTS.DLL, , , 2 + +[CH341SER.CopyFiles.DLLA64] +CH341PTA64.DLL, , , 2 +CH341PORTSA64.DLL, , , 2 + +[CH341SER.CopyFiles.WOWDLL] +CH341PT.DLL, , , 2 +;安装DLL是可选的,DLL可以用于识别CH341端口和监视CH341端口的插拔事件 + +[CH341SER.9X.AddReg] +HKR, , DevLoader, , *NTKERN +HKR, , NTMPDriver, , CH341S98.SYS + +[CH341SER.NT.AddReg] +HKR,,EnumPropPages32,,"CH341PORTS.dll,SerialPortPropPageProvider" + +[CH341SER.NTAMD64.AddReg] +HKR,,EnumPropPages32,,"CH341PORTSA64.dll,SerialPortPropPageProvider" + +[CH341SER.NTARM64.AddReg] +HKR,,EnumPropPages32,,"CH341PORTSA64.dll,SerialPortPropPageProvider" + +[CH341SER.NT.HW.AddReg] +;HKR,,"EnableBRA",0x00010001,1 +;HKR,,"BRAVal",0x00010001,1 +;上面这行用于波特率调整,如需启动,可将如上两行分号去掉 +;HKR,,"UpperFilters",0x00010000,"serenum" +;上面这行用于枚举接在串口的即插即用设备,启动时将产生DTR和RTS信号,如果需要枚举,请将上面这行的分号去掉 + +[CH341S98.9X.AddReg] +HKR, , DevLoader, , *vcomm +HKR, , PortDriver, , CH341SER.VXD +HKR, , Contention, , *vcd +HKR, , ConfigDialog, , serialui.dll +HKR, , DCB, 3, 1C,00,00,00, 80,25,00,00, 11,00,00,00, 00,00,0A,00, 0A,00,08,00, 00,11,13,00, 00,00,00,00 +HKR, , PortSubClass, 1, 01 +HKR, , EnumPropPages, , "serialui.dll,EnumPropPages" +;HKR, , Enumerator, , serenum.vxd +;上面这行用于枚举接在串口的即插即用设备,启动时将产生DTR和RTS信号,如果需要枚举,请将上面这行的分号去掉 + +[CH341SER.AddReg] +HKLM, SOFTWARE\WinChipHead\IC\CH341SER, WDM, 0x00010001, 0x00000034 +HKLM, SOFTWARE\WinChipHead\IC\CH341PORT, DLL, 0x00010001, 0x00000010 +HKLM, SOFTWARE\WinChipHead\IC\CH341SER, Function, , "USB=>Serial" +;HKLM, SYSTEM\CurrentControlSet\Services\CH341SER, UserRemoval, 0x00010001, 0x00000001 +;上面这行用于在系统托盘中显示“安全删除USB转SERIAL硬件设备”,便于用户手工删除硬件 + +[CH341S98.AddReg] +HKLM, SOFTWARE\WinChipHead\IC\CH341SER, VXD, 0x00010001, 0x00000023 + +[CH341S98_Install.Services] +; + +[CH341SER_Install.NT.Services] +AddService = CH341SER, 2, CH341SER.Service +;AddService = Serenum, , Serenum_Service_Inst + +[CH341SER_Inst.NTamd64.Services] +AddService = CH341SER_A64, 2, CH341SER.ServiceA64 +;AddService = Serenum, , Serenum_Service_Inst + +[CH341SER_Inst.NTia64.Services] +AddService = CH341SER_I64, 2, CH341SER.ServiceI64 +;AddService = Serenum, , Serenum_Service_Inst + +[CH341SER_Inst.NTARM64.Services] +AddService = CH341SER_M64, 2, CH341SER.ServiceM64 +;AddService = Serenum, , Serenum_Service_Inst + +[CH341SER.Service] +DisplayName = "CH341SER" +ServiceType = 1 +StartType = 3 +ErrorControl = 1 +ServiceBinary = %10%\System32\Drivers\CH341SER.SYS + +[CH341SER.ServiceA64] +DisplayName = "CH341SER_A64" +ServiceType = 1 +StartType = 3 +ErrorControl = 1 +ServiceBinary = %10%\System32\Drivers\CH341S64.SYS + +[CH341SER.ServiceI64] +DisplayName = "CH341SER_I64" +ServiceType = 1 +StartType = 3 +ErrorControl = 1 +ServiceBinary = %10%\System32\Drivers\CH341I64.SYS + +[CH341SER.ServiceM64] +DisplayName = "CH341SER_M64" +ServiceType = 1 +StartType = 3 +ErrorControl = 1 +ServiceBinary = %10%\System32\Drivers\CH341M64.SYS + +[Serenum_Service_Inst] +DisplayName = "SerEnum" +ServiceType = 1 +StartType = 3 +ErrorControl = 1 +ServiceBinary = %12%\serenum.sys +LoadOrderGroup = PNP Filter + +[DestinationDirs] +DefaultDestDir = 10, System32\Drivers +CH341S98.DelFiles.SYS = 11 +CH341SER.CopyFiles.SYS = 10, System32\Drivers +CH341SER.NT.CopyFiles.SYS = 10, System32\Drivers +CH341S98.CopyFiles.VXD = 11 +CH341SER.CopyFiles.DLL = 11 +CH341SER.CopyFiles.DLLA64 = 11 +CH341SER.CopyFiles.WOWDLL = 10,SysWOW64 +CH341SER.NT.CopyFiles.SYSA64 = 10, System32\Drivers +CH341SER.NT.CopyFiles.SYSM64 = 10, System32\Drivers +;CH341SER.NT.CopyFiles.SYSI64 = 10, System32\Drivers + +[SourceDisksFiles] +CH341M64.SYS = 1 +CH341PT.DLL = 1 +CH341PTA64.DLL= 1 +CH341SER.SYS = 1 +CH341S98.SYS = 1 +CH341SER.VXD = 1 +CH341S64.SYS = 1 +CH341PORTS.DLL = 1 +CH341PORTSA64.DLL = 1 +;CH341I64.SYS = 1 + +[SourceDisksNames] +1 = %DISK_NAME%, , , + +[SourceDisksNames.amd64] +1 = %DISK_NAME%, , , + +[SourceDisksNames.ia64] +1 = %DISK_NAME%, , , + +[SourceDisksNames.arm64] +1 = %DISK_NAME%, , , + +[Strings] +WinChipHead = "wch.cn" +CH341SER.DeviceDesc = "USB-SERIAL CH341" +CH341S98.DeviceDesc = "USB-SERIAL CH341" +CH340SER.DeviceDesc = "USB-SERIAL CH340" +CH341ASER.DeviceDesc = "USB-SERIAL CH341A" +CH340KSER.DeviceDesc = "USB-SERIAL CH340K" +CH330SER.DeviceDesc = "USB-SERIAL CH330" +DISK_NAME = "CH341 Serial Installation Disk" diff --git a/Drivers/CH341SER/CH341SER.SYS b/Drivers/CH341SER/CH341SER.SYS new file mode 100644 index 0000000..57066c4 Binary files /dev/null and b/Drivers/CH341SER/CH341SER.SYS differ diff --git a/Drivers/CH341SER/CH341SER.VXD b/Drivers/CH341SER/CH341SER.VXD new file mode 100644 index 0000000..1c04d3d Binary files /dev/null and b/Drivers/CH341SER/CH341SER.VXD differ diff --git a/Drivers/CH341SER/DRVSETUP64/DRVSETUP64.exe b/Drivers/CH341SER/DRVSETUP64/DRVSETUP64.exe new file mode 100644 index 0000000..826fdc3 Binary files /dev/null and b/Drivers/CH341SER/DRVSETUP64/DRVSETUP64.exe differ diff --git a/Drivers/CH341SER/SETUP.EXE b/Drivers/CH341SER/SETUP.EXE new file mode 100644 index 0000000..bf142f9 Binary files /dev/null and b/Drivers/CH341SER/SETUP.EXE differ diff --git a/Drivers/CH341SER/WIN 1X/CH341M64.sys b/Drivers/CH341SER/WIN 1X/CH341M64.sys new file mode 100644 index 0000000..82c04b4 Binary files /dev/null and b/Drivers/CH341SER/WIN 1X/CH341M64.sys differ diff --git a/Drivers/CH341SER/WIN 1X/CH341PORTS.DLL b/Drivers/CH341SER/WIN 1X/CH341PORTS.DLL new file mode 100644 index 0000000..9154a82 Binary files /dev/null and b/Drivers/CH341SER/WIN 1X/CH341PORTS.DLL differ diff --git a/Drivers/CH341SER/WIN 1X/CH341PORTSA64.DLL b/Drivers/CH341SER/WIN 1X/CH341PORTSA64.DLL new file mode 100644 index 0000000..36276eb Binary files /dev/null and b/Drivers/CH341SER/WIN 1X/CH341PORTSA64.DLL differ diff --git a/Drivers/CH341SER/WIN 1X/CH341PT.DLL b/Drivers/CH341SER/WIN 1X/CH341PT.DLL new file mode 100644 index 0000000..2739f80 Binary files /dev/null and b/Drivers/CH341SER/WIN 1X/CH341PT.DLL differ diff --git a/Drivers/CH341SER/WIN 1X/CH341PTA64.DLL b/Drivers/CH341SER/WIN 1X/CH341PTA64.DLL new file mode 100644 index 0000000..5274021 Binary files /dev/null and b/Drivers/CH341SER/WIN 1X/CH341PTA64.DLL differ diff --git a/Drivers/CH341SER/WIN 1X/CH341S64.sys b/Drivers/CH341SER/WIN 1X/CH341S64.sys new file mode 100644 index 0000000..11e3654 Binary files /dev/null and b/Drivers/CH341SER/WIN 1X/CH341S64.sys differ diff --git a/Drivers/CH341SER/WIN 1X/CH341S98.SYS b/Drivers/CH341SER/WIN 1X/CH341S98.SYS new file mode 100644 index 0000000..fdce135 Binary files /dev/null and b/Drivers/CH341SER/WIN 1X/CH341S98.SYS differ diff --git a/Drivers/CH341SER/WIN 1X/CH341SER.CAT b/Drivers/CH341SER/WIN 1X/CH341SER.CAT new file mode 100644 index 0000000..be2bd9c Binary files /dev/null and b/Drivers/CH341SER/WIN 1X/CH341SER.CAT differ diff --git a/Drivers/CH341SER/WIN 1X/CH341SER.INF b/Drivers/CH341SER/WIN 1X/CH341SER.INF new file mode 100644 index 0000000..58ecd12 --- /dev/null +++ b/Drivers/CH341SER/WIN 1X/CH341SER.INF @@ -0,0 +1,285 @@ +; CH341SER.INF +; Driver for CH340/CH341 (USB=>SERIAL chip) V3.8 +; WDM&VXD for Windows 2000/XP/Vista/7/8/8.1/10/11/SERVER 2003/2008/2012/2016/2019/2022 +; Copyright (C) WCH 2001-2023 +; + +[Version] +Signature = "$Chicago$" +Class = Ports +ClassGuid = {4D36E978-E325-11CE-BFC1-08002BE10318} +Provider = %WinChipHead% +DriverVer = 02/11/2023, 3.8.2023.02 +CatalogFile =CH341SER.CAT + + +[ControlFlags] +ExcludeFromSelect = USB\VID_1A86&PID_7523 +ExcludeFromSelect = USB\VID_1A86&PID_5523 +ExcludeFromSelect = USB\VID_1A86&PID_7522 +ExcludeFromSelect = USB\VID_1A86&PID_E523 +ExcludeFromSelect = USB\VID_4348&PID_5523 +ExcludeFromSelect = USB\VID_4348&PID_5523&REV_0250 +;ExcludeFromSelect = USBSERPORT\SER5523 +;ExcludeFromSelect = CH341PORT\SER5523 + +[Manufacturer] +%WinChipHead% = WinChipHead,NT,NTamd64,NTia64,NTARM64 + +[WinChipHead] +%CH340SER.DeviceDesc% = CH341SER_Install, USB\VID_1A86&PID_7523 +%CH341ASER.DeviceDesc% = CH341SER_Install, USB\VID_1A86&PID_5523 +%CH340KSER.DeviceDesc% = CH341SER_Install, USB\VID_1A86&PID_7522 +%CH330SER.DeviceDesc% = CH341SER_Install, USB\VID_1A86&PID_E523 +%CH341SER.DeviceDesc% = CH341SER_Install, USB\VID_4348&PID_5523 +%CH340SER.DeviceDesc% = CH341SER_Install, USB\VID_4348&PID_5523&REV_0250 +;%CH341S98.DeviceDesc% = CH341S98_Install, USBSERPORT\SER5523 +;%CH341S98.DeviceDesc% = CH341S98_Install, CH341PORT\SER5523 + +[WinChipHead.NT] +%CH340SER.DeviceDesc% = CH341SER_Install.NT, USB\VID_1A86&PID_7523 +%CH341ASER.DeviceDesc% = CH341SER_Install.NT, USB\VID_1A86&PID_5523 +%CH340KSER.DeviceDesc% = CH341SER_Install.NT, USB\VID_1A86&PID_7522 +%CH330SER.DeviceDesc% = CH341SER_Install.NT, USB\VID_1A86&PID_E523 +%CH341SER.DeviceDesc% = CH341SER_Install.NT, USB\VID_4348&PID_5523 +%CH340SER.DeviceDesc% = CH341SER_Install.NT, USB\VID_4348&PID_5523&REV_0250 + +[WinChipHead.NTamd64] +%CH340SER.DeviceDesc% = CH341SER_Inst.NTamd64, USB\VID_1A86&PID_7523 +%CH341ASER.DeviceDesc% = CH341SER_Inst.NTamd64, USB\VID_1A86&PID_5523 +%CH340KSER.DeviceDesc% = CH341SER_Inst.NTamd64, USB\VID_1A86&PID_7522 +%CH330SER.DeviceDesc% = CH341SER_Inst.NTamd64, USB\VID_1A86&PID_E523 +%CH341SER.DeviceDesc% = CH341SER_Inst.NTamd64, USB\VID_4348&PID_5523 +%CH340SER.DeviceDesc% = CH341SER_Inst.NTamd64, USB\VID_4348&PID_5523&REV_0250 + +[WinChipHead.NTia64] +%CH340SER.DeviceDesc% = CH341SER_Inst.NTia64, USB\VID_1A86&PID_7523 +%CH341ASER.DeviceDesc% = CH341SER_Inst.NTia64, USB\VID_1A86&PID_5523 +%CH340KSER.DeviceDesc% = CH341SER_Inst.NTia64, USB\VID_1A86&PID_7522 +%CH330SER.DeviceDesc% = CH341SER_Inst.NTia64, USB\VID_1A86&PID_E523 +%CH341SER.DeviceDesc% = CH341SER_Inst.NTia64, USB\VID_4348&PID_5523 +%CH340SER.DeviceDesc% = CH341SER_Inst.NTia64, USB\VID_4348&PID_5523&REV_0250 + +[WinChipHead.NTARM64] +%CH340SER.DeviceDesc% = CH341SER_Inst.NTARM64, USB\VID_1A86&PID_7523 +%CH341ASER.DeviceDesc% = CH341SER_Inst.NTARM64, USB\VID_1A86&PID_5523 +%CH340KSER.DeviceDesc% = CH341SER_Inst.NTARM64, USB\VID_1A86&PID_7522 +%CH330SER.DeviceDesc% = CH341SER_Inst.NTARM64, USB\VID_1A86&PID_E523 +%CH341SER.DeviceDesc% = CH341SER_Inst.NTARM64, USB\VID_4348&PID_5523 +%CH340SER.DeviceDesc% = CH341SER_Inst.NTARM64, USB\VID_4348&PID_5523&REV_0250 + +[CH341SER_Install] +DelFiles = CH341S98.DelFiles.SYS +CopyFiles = CH341SER.CopyFiles.SYS, CH341SER.CopyFiles.DLL +AddReg = CH341SER.9X.AddReg, CH341SER.AddReg + +[CH341SER_Install.NT] +CopyFiles = CH341SER.NT.CopyFiles.SYS, CH341SER.CopyFiles.DLL +AddReg = CH341SER.NT.AddReg, CH341SER.AddReg + +[CH341SER_Install.NT.HW] +AddReg = CH341SER.NT.HW.AddReg + +[CH341SER_Inst.NTamd64] +CopyFiles = CH341SER.NT.CopyFiles.SYSA64, CH341SER.CopyFiles.DLLA64, CH341SER.CopyFiles.WOWDLL +AddReg = CH341SER.NTAMD64.AddReg, CH341SER.AddReg + +[CH341SER_Inst.NTamd64.HW] +AddReg = CH341SER.NT.HW.AddReg + +[CH341SER_Inst.NTia64] +CopyFiles = CH341SER.NT.CopyFiles.SYSI64,CH341SER.CopyFiles.DLLA64 +AddReg = CH341SER.NT.AddReg, CH341SER.AddReg + +[CH341SER_Inst.NTia64.HW] +AddReg = CH341SER.NT.HW.AddReg + +[CH341SER_Inst.NTARM64] +CopyFiles = CH341SER.NT.CopyFiles.SYSM64,CH341SER.CopyFiles.DLLA64, CH341SER.CopyFiles.WOWDLL +AddReg = CH341SER.NTARM64.AddReg, CH341SER.AddReg + +[CH341SER_Inst.NTARM64.HW] +AddReg = CH341SER.NT.HW.AddReg + +[CH341S98_Install] +DelFiles = CH341S98.DelFiles.SYS +CopyFiles = CH341S98.CopyFiles.VXD, CH341SER.CopyFiles.SYS +AddReg = CH341S98.9X.AddReg, CH341S98.AddReg + +;[CH341S98_Install.NT] + +[CH341S98.DelFiles.SYS] +CH341S98.SYS, , , 1 + +[CH341SER.CopyFiles.SYS] +CH341S98.SYS, , , 2 + +[CH341SER.NT.CopyFiles.SYS] +CH341SER.SYS, , , 2 + +[CH341SER.NT.CopyFiles.SYSA64] +CH341S64.SYS, , , 2 + +[CH341SER.NT.CopyFiles.SYSI64] +;CH341I64.SYS, , , 2 + +[CH341SER.NT.CopyFiles.SYSM64] +CH341M64.SYS, , , 2 + +[CH341S98.CopyFiles.VXD] +CH341SER.VXD, , , 2 + +[CH341SER.CopyFiles.DLL] +CH341PT.DLL, , , 2 +CH341PORTS.DLL, , , 2 + +[CH341SER.CopyFiles.DLLA64] +CH341PTA64.DLL, , , 2 +CH341PORTSA64.DLL, , , 2 + +[CH341SER.CopyFiles.WOWDLL] +CH341PT.DLL, , , 2 +;安装DLL是可选的,DLL可以用于识别CH341端口和监视CH341端口的插拔事件 + +[CH341SER.9X.AddReg] +HKR, , DevLoader, , *NTKERN +HKR, , NTMPDriver, , CH341S98.SYS + +[CH341SER.NT.AddReg] +HKR,,EnumPropPages32,,"CH341PORTS.dll,SerialPortPropPageProvider" + +[CH341SER.NTAMD64.AddReg] +HKR,,EnumPropPages32,,"CH341PORTSA64.dll,SerialPortPropPageProvider" + +[CH341SER.NTARM64.AddReg] +HKR,,EnumPropPages32,,"CH341PORTSA64.dll,SerialPortPropPageProvider" + +[CH341SER.NT.HW.AddReg] +;HKR,,"EnableBRA",0x00010001,1 +;HKR,,"BRAVal",0x00010001,1 +;上面这行用于波特率调整,如需启动,可将如上两行分号去掉 +;HKR,,"UpperFilters",0x00010000,"serenum" +;上面这行用于枚举接在串口的即插即用设备,启动时将产生DTR和RTS信号,如果需要枚举,请将上面这行的分号去掉 + +[CH341S98.9X.AddReg] +HKR, , DevLoader, , *vcomm +HKR, , PortDriver, , CH341SER.VXD +HKR, , Contention, , *vcd +HKR, , ConfigDialog, , serialui.dll +HKR, , DCB, 3, 1C,00,00,00, 80,25,00,00, 11,00,00,00, 00,00,0A,00, 0A,00,08,00, 00,11,13,00, 00,00,00,00 +HKR, , PortSubClass, 1, 01 +HKR, , EnumPropPages, , "serialui.dll,EnumPropPages" +;HKR, , Enumerator, , serenum.vxd +;上面这行用于枚举接在串口的即插即用设备,启动时将产生DTR和RTS信号,如果需要枚举,请将上面这行的分号去掉 + +[CH341SER.AddReg] +HKLM, SOFTWARE\WinChipHead\IC\CH341SER, WDM, 0x00010001, 0x00000034 +HKLM, SOFTWARE\WinChipHead\IC\CH341PORT, DLL, 0x00010001, 0x00000010 +HKLM, SOFTWARE\WinChipHead\IC\CH341SER, Function, , "USB=>Serial" +;HKLM, SYSTEM\CurrentControlSet\Services\CH341SER, UserRemoval, 0x00010001, 0x00000001 +;上面这行用于在系统托盘中显示“安全删除USB转SERIAL硬件设备”,便于用户手工删除硬件 + +[CH341S98.AddReg] +HKLM, SOFTWARE\WinChipHead\IC\CH341SER, VXD, 0x00010001, 0x00000023 + +[CH341S98_Install.Services] +; + +[CH341SER_Install.NT.Services] +AddService = CH341SER, 2, CH341SER.Service +;AddService = Serenum, , Serenum_Service_Inst + +[CH341SER_Inst.NTamd64.Services] +AddService = CH341SER_A64, 2, CH341SER.ServiceA64 +;AddService = Serenum, , Serenum_Service_Inst + +[CH341SER_Inst.NTia64.Services] +AddService = CH341SER_I64, 2, CH341SER.ServiceI64 +;AddService = Serenum, , Serenum_Service_Inst + +[CH341SER_Inst.NTARM64.Services] +AddService = CH341SER_M64, 2, CH341SER.ServiceM64 +;AddService = Serenum, , Serenum_Service_Inst + +[CH341SER.Service] +DisplayName = "CH341SER" +ServiceType = 1 +StartType = 3 +ErrorControl = 1 +ServiceBinary = %10%\System32\Drivers\CH341SER.SYS + +[CH341SER.ServiceA64] +DisplayName = "CH341SER_A64" +ServiceType = 1 +StartType = 3 +ErrorControl = 1 +ServiceBinary = %10%\System32\Drivers\CH341S64.SYS + +[CH341SER.ServiceI64] +DisplayName = "CH341SER_I64" +ServiceType = 1 +StartType = 3 +ErrorControl = 1 +ServiceBinary = %10%\System32\Drivers\CH341I64.SYS + +[CH341SER.ServiceM64] +DisplayName = "CH341SER_M64" +ServiceType = 1 +StartType = 3 +ErrorControl = 1 +ServiceBinary = %10%\System32\Drivers\CH341M64.SYS + +[Serenum_Service_Inst] +DisplayName = "SerEnum" +ServiceType = 1 +StartType = 3 +ErrorControl = 1 +ServiceBinary = %12%\serenum.sys +LoadOrderGroup = PNP Filter + +[DestinationDirs] +DefaultDestDir = 10, System32\Drivers +CH341S98.DelFiles.SYS = 11 +CH341SER.CopyFiles.SYS = 10, System32\Drivers +CH341SER.NT.CopyFiles.SYS = 10, System32\Drivers +CH341S98.CopyFiles.VXD = 11 +CH341SER.CopyFiles.DLL = 11 +CH341SER.CopyFiles.DLLA64 = 11 +CH341SER.CopyFiles.WOWDLL = 10,SysWOW64 +CH341SER.NT.CopyFiles.SYSA64 = 10, System32\Drivers +CH341SER.NT.CopyFiles.SYSM64 = 10, System32\Drivers +;CH341SER.NT.CopyFiles.SYSI64 = 10, System32\Drivers + +[SourceDisksFiles] +CH341M64.SYS = 1 +CH341PT.DLL = 1 +CH341PTA64.DLL= 1 +CH341SER.SYS = 1 +CH341S98.SYS = 1 +CH341SER.VXD = 1 +CH341S64.SYS = 1 +CH341PORTS.DLL = 1 +CH341PORTSA64.DLL = 1 +;CH341I64.SYS = 1 + +[SourceDisksNames] +1 = %DISK_NAME%, , , + +[SourceDisksNames.amd64] +1 = %DISK_NAME%, , , + +[SourceDisksNames.ia64] +1 = %DISK_NAME%, , , + +[SourceDisksNames.arm64] +1 = %DISK_NAME%, , , + +[Strings] +WinChipHead = "wch.cn" +CH341SER.DeviceDesc = "USB-SERIAL CH341" +CH341S98.DeviceDesc = "USB-SERIAL CH341" +CH340SER.DeviceDesc = "USB-SERIAL CH340" +CH341ASER.DeviceDesc = "USB-SERIAL CH341A" +CH340KSER.DeviceDesc = "USB-SERIAL CH340K" +CH330SER.DeviceDesc = "USB-SERIAL CH330" +DISK_NAME = "CH341 Serial Installation Disk" diff --git a/Drivers/CH341SER/WIN 1X/CH341SER.VXD b/Drivers/CH341SER/WIN 1X/CH341SER.VXD new file mode 100644 index 0000000..1c04d3d Binary files /dev/null and b/Drivers/CH341SER/WIN 1X/CH341SER.VXD differ diff --git a/Drivers/CH341SER/WIN 1X/CH341SER.sys b/Drivers/CH341SER/WIN 1X/CH341SER.sys new file mode 100644 index 0000000..be37e75 Binary files /dev/null and b/Drivers/CH341SER/WIN 1X/CH341SER.sys differ diff --git a/openbuilds_drivers.nsi b/openbuilds_drivers.nsi index dc58b79..56ba57b 100644 --- a/openbuilds_drivers.nsi +++ b/openbuilds_drivers.nsi @@ -2,7 +2,7 @@ !include WinVer.nsh # Windows version detection. !include x64.nsh # X86/X64 version detection. -!define VERSION 1.0.0.0 +!define VERSION 2024.04.26.0 # Set attributes that describe the installer. Icon "Assets\openbuilds.ico" @@ -21,7 +21,7 @@ VIAddVersionKey /LANG=1033 "ProductName" "OpenBuilds USB to UART drivers" VIAddVersionKey /LANG=1033 "CompanyName" "OpenBuilds" VIAddVersionKey /LANG=1033 "LegalCopyright" "OpenBuilds" VIAddVersionKey /LANG=1033 "FileDescription" "OpenBuilds USB to UART drivers (FTDI and Silicon Labs)" -VIAddVersionKey /LANG=1033 "FileVersion" "1.0.0.0" +VIAddVersionKey /LANG=1033 "FileVersion" "2024.04.26.0" VIProductVersion ${VERSION} VIFileVersion ${VERSION} @@ -93,6 +93,12 @@ Section "Silicon Labs USB Uart" ${EndIf} SectionEnd +Section "WCH CH340/341 USB to Serial" + DetailPrint "WCH CH340/341 USB to Serial drivers..." + ExecWait '"$dpinst" /q /se /path "$INSTDIR\Drivers\CH341SER"' +SectionEnd + + Function .onRebootFailed MessageBox MB_OK|MB_ICONSTOP "Reboot failed. Please reboot manually." /SD IDOK FunctionEnd