zbezj 发表于 2025-3-13 23:12:08

C代码转化的问题

本帖最后由 zbezj 于 2025-3-13 23:14 编辑


一个开源的C代码,编译的exe文件是一个UI。无奈它没有参数,想要把它变成带有参数,后台运行的exe程序。

不太会修改源代码,有没有大佬帮忙改一些c代码,并编译成exe(我用源代码编译,总是失败,不知道为什么)。C代码全部修改成AU3感觉工作量有点大,只需改一下C代码,并编译成带参数运行的exe就好啦。跪谢~

功能:这个软件就3个功能,①一个按钮是获取系统中的InstallationID;另一个按钮两个功能:②根据这个InstallationID生成一个Confirmation,③并将Confirmation安装到系统中。(所以改成三个静默参数)

这是exe运行后的界面:



这是源代码+exe


haijie1223 发表于 2025-3-14 21:06:16

哎,太长了...au3没有动力搞
给你编个dll吧


#PRE_UseX64=n
Global $Dll_xp_act = DllOpen('xp_act.dll')
Local $IDStr = GetIdFromSystem()
ConsoleWrite('IDStr=' & $IDStr & @CRLF)
Local $confirmation_id = CreateIdFromIID($IDStr)
ConsoleWrite('confirmation_id=' & $confirmation_id & @CRLF)
If PutIdToSystem($confirmation_id) Then
      ConsoleWrite('OK' & @CRLF)
Else
      ConsoleWrite('FAILED' & @CRLF)
EndIf
Func PutIdToSystem($confirmationId)
      Local $Ret = DllCall($Dll_xp_act, 'BOOL', 'PutIdToSystem', 'wstr', $confirmationId)
      Return $Ret
EndFunc   ;==>PutIdToSystem
Func CreateIdFromIID($installation_id)
      Local $Ret = DllCall($Dll_xp_act, 'wstr', 'CreateIdFromIID', 'wstr', $installation_id)
      Return $Ret
EndFunc   ;==>CreateIdFromIID
Func GetIdFromSystem()
      Local $Ret = DllCall($Dll_xp_act, 'wstr', 'GetIdFromSystem')
      Return $Ret
EndFunc   ;==>GetIdFromSystem

zbezj 发表于 2025-3-15 00:07:40

本帖最后由 zbezj 于 2025-3-15 00:16 编辑

haijie1223 发表于 2025-3-14 21:06
哎,太长了...au3没有动力搞
给你编个dll吧
在xp系统上运行,报错。   源代码能不能稍微改一下,编译成exe,会不会更简单点








haijie1223 发表于 2025-3-15 10:22:12

zbezj 发表于 2025-3-15 00:07
在xp系统上运行,报错。   源代码能不能稍微改一下,编译成exe,会不会更简单点




更新了,重新下载测试

zbezj 发表于 2025-3-15 12:49:03

haijie1223 发表于 2025-3-15 10:22
更新了,重新下载测试

:face (15): 牛B
页: [1]
查看完整版本: C代码转化的问题