Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - Modificare da COM1 a COM2
Forum - C/C++ - Modificare da COM1 a COM2

Avatar
criscros1989 (Normal User)
Newbie


Messaggi: 2
Iscritto: 14/09/2013

Segnala al moderatore
Postato alle 22:12
Sabato, 14/09/2013
Salve a tutti, sono un tecnico e riparo pc, console, smatphone etc...mi diletto anche in programmazione, ma a livello bassissimo, quindi sono un noob ma qualcosa ci capisco
Vengo al dunque, ho la necessità di modificare un programma visto che ho una stazione per reballing che ha 2 controller comandati mediante seriale, ha un programma con cui controllare il controller da PC, il punto è che tale programma gestisce solo la COM1, vorrei fare in modo che gestisse solo la COM2, in modo tale da avere 2 programmi, uno per la COM1 e l'altro per la COM2.
Allora ho decompilato il programma con DeDe, ho provato anche w32Dsam ma non ci riesce e va in blocco ,comunque  mediante il tasto Run sono riuscito a risalire alla parte in cui da errore cioè "Connessione con COM1 mancate - Verifica!!!!" nel "btnRunClick"
Il codice all'interno è il seguente:
Codice sorgente - presumibilmente Plain Text

  1. 00401AC8   55                     push    ebp
  2. 00401AC9   8BEC                   mov     ebp, esp
  3. 00401ACB   83C4F8                 add     esp, -$08
  4. 00401ACE   8955F8                 mov     [ebp-$08], edx
  5. 00401AD1   8945FC                 mov     [ebp-$04], eax
  6. 00401AD4   8B45FC                 mov     eax, [ebp-$04]
  7.  
  8. * Reference to control btnRun : TSpeedButton
  9. |
  10. 00401AD7   8B900C030000           mov     edx, [eax+$030C]
  11.  
  12. * Reference to field TSpeedButton.Down : Boolean
  13. |
  14. 00401ADD   80BA3001000000         cmp     byte ptr [edx+$0130], $00
  15. 00401AE4   0F84CA000000           jz      00401BB4
  16. 00401AEA   33D2                   xor     edx, edx
  17. 00401AEC   8B45FC                 mov     eax, [ebp-$04]
  18.  
  19. * Reference to control iPlot1 : TiPlot
  20. |
  21. 00401AEF   8B80D0020000           mov     eax, [eax+$02D0]
  22.  
  23. * Reference to: dbtables.TDatabase.GetDataSet(TDatabase;Integer):TDBDataSet;
  24. |
  25. 00401AF5   E872FD0500             call    0046186C
  26.  
  27. * Reference to : TiPlotChannelCustom._PROC_004919B0()
  28. |
  29. 00401AFA   E8B1FE0800             call    004919B0
  30. 00401AFF   BA01000000             mov     edx, $00000001
  31. 00401B04   8B4DFC                 mov     ecx, [ebp-$04]
  32. 00401B07   8B81D0020000           mov     eax, [ecx+$02D0]
  33.  
  34. * Reference to: dbtables.TDatabase.GetDataSet(TDatabase;Integer):TDBDataSet;
  35. |
  36. 00401B0D   E85AFD0500             call    0046186C
  37.  
  38. * Reference to : TiPlotChannelCustom._PROC_004919B0()
  39. |
  40. 00401B12   E899FE0800             call    004919B0
  41. 00401B17   6A01                   push    $01
  42. 00401B19   6A01                   push    $01
  43. 00401B1B   8B55FC                 mov     edx, [ebp-$04]
  44. 00401B1E   81C2C0030000           add     edx, $000003C0
  45. 00401B24   52                     push    edx
  46.  
  47. * Reference to : TForm1._PROC_00404B50()
  48. |
  49. 00401B25   E826300000             call    00404B50
  50. 00401B2A   83C40C                 add     esp, +$0C
  51. 00401B2D   84C0                   test    al, al
  52. 00401B2F   751A                   jnz     00401B4B
  53. 00401B31   6A30                   push    $30
  54.  
  55. * Possible String Reference to: 'ATT.'
  56. |
  57. 00401B33   B95FE85800             mov     ecx, $0058E85F
  58.  
  59. * Possible String Reference to: 'Connesione con COM1 mancante      
  60. |                                - Verifica !!! '
  61. |
  62. 00401B38   BA2CE85800             mov     edx, $0058E82C
  63. 00401B3D   A1E0655900             mov     eax, dword ptr [$005965E0]
  64. 00401B42   8B00                   mov     eax, [eax]
  65.  
  66. |
  67. 00401B44   E8FBEB1500             call    00560744
  68. 00401B49   EB21                   jmp     00401B6C
  69. 00401B4B   8B55FC                 mov     edx, [ebp-$04]
  70. 00401B4E   33C9                   xor     ecx, ecx
  71.  
  72. * Reference to field TForm1.OFFS_03B8
  73. |
  74. 00401B50   898AB8030000           mov     [edx+$03B8], ecx
  75.  
  76. * Reference to field TForm1.OFFS_03BC
  77. |
  78. 00401B56   898ABC030000           mov     [edx+$03BC], ecx
  79. 00401B5C   B201                   mov     dl, $01
  80. 00401B5E   8B45FC                 mov     eax, [ebp-$04]
  81.  
  82. * Reference to control tmrData : TTimer
  83. |
  84. 00401B61   8B80D4020000           mov     eax, [eax+$02D4]
  85.  
  86. * Reference to: extctrls.TTimer.SetEnabled(TTimer;Boolean);
  87. |
  88. 00401B67   E8001E1000             call    0050396C
  89. 00401B6C   33D2                   xor     edx, edx
  90. 00401B6E   8B4DFC                 mov     ecx, [ebp-$04]
  91. 00401B71   8B81F4020000           mov     eax, [ecx+$02F4]
  92. 00401B77   8B08                   mov     ecx, [eax]
  93.  
  94. * Possible reference to virtual method TTimer.OFFS_5C
  95. |
  96. 00401B79   FF515C                 call    dword ptr [ecx+$5C]
  97. 00401B7C   33D2                   xor     edx, edx
  98. 00401B7E   8B45FC                 mov     eax, [ebp-$04]
  99.  
  100. * Reference to control btnUpLoad : TBitBtn
  101. |
  102. 00401B81   8B809C030000           mov     eax, [eax+$039C]
  103. 00401B87   8B08                   mov     ecx, [eax]
  104.  
  105. * Possible reference to virtual method TBitBtn.OFFS_5C
  106. |
  107. 00401B89   FF515C                 call    dword ptr [ecx+$5C]
  108. 00401B8C   33D2                   xor     edx, edx
  109. 00401B8E   8B45FC                 mov     eax, [ebp-$04]
  110.  
  111. * Reference to control btnDownLoad : TBitBtn
  112. |
  113. 00401B91   8B80A0030000           mov     eax, [eax+$03A0]
  114. 00401B97   8B08                   mov     ecx, [eax]
  115.  
  116. * Possible reference to virtual method TBitBtn.OFFS_5C
  117. |
  118. 00401B99   FF515C                 call    dword ptr [ecx+$5C]
  119. 00401B9C   8B55FC                 mov     edx, [ebp-$04]
  120. 00401B9F   33C0                   xor     eax, eax
  121.  
  122. * Reference to field TForm1.OFFS_0408
  123. |
  124. 00401BA1   898208040000           mov     [edx+$0408], eax
  125. 00401BA7   8B55FC                 mov     edx, [ebp-$04]
  126. 00401BAA   33C9                   xor     ecx, ecx
  127.  
  128. * Reference to field TForm1.OFFS_040C
  129. |
  130. 00401BAC   898A0C040000           mov     [edx+$040C], ecx
  131. 00401BB2   EB55                   jmp     00401C09
  132. 00401BB4   6A01                   push    $01
  133. 00401BB6   6A00                   push    $00
  134. 00401BB8   8B45FC                 mov     eax, [ebp-$04]
  135. 00401BBB   05C0030000             add     eax, +$000003C0
  136. 00401BC0   50                     push    eax
  137.  
  138. * Reference to : TForm1._PROC_00404B50()
  139. |
  140. 00401BC1   E88A2F0000             call    00404B50
  141. 00401BC6   83C40C                 add     esp, +$0C
  142. 00401BC9   33D2                   xor     edx, edx
  143. 00401BCB   8B4DFC                 mov     ecx, [ebp-$04]
  144. 00401BCE   8B81D4020000           mov     eax, [ecx+$02D4]
  145.  
  146. * Reference to: extctrls.TTimer.SetEnabled(TTimer;Boolean);
  147. |
  148. 00401BD4   E8931D1000             call    0050396C
  149. 00401BD9   B201                   mov     dl, $01
  150. 00401BDB   8B4DFC                 mov     ecx, [ebp-$04]
  151. 00401BDE   8B81F4020000           mov     eax, [ecx+$02F4]
  152. 00401BE4   8B08                   mov     ecx, [eax]
  153. 00401BE6   FF515C                 call    dword ptr [ecx+$5C]
  154. 00401BE9   B201                   mov     dl, $01
  155. 00401BEB   8B45FC                 mov     eax, [ebp-$04]
  156.  
  157. * Reference to control btnUpLoad : TBitBtn
  158. |
  159. 00401BEE   8B809C030000           mov     eax, [eax+$039C]
  160. 00401BF4   8B08                   mov     ecx, [eax]
  161.  
  162. * Possible reference to virtual method TBitBtn.OFFS_5C
  163. |
  164. 00401BF6   FF515C                 call    dword ptr [ecx+$5C]
  165. 00401BF9   B201                   mov     dl, $01
  166. 00401BFB   8B45FC                 mov     eax, [ebp-$04]
  167.  
  168. * Reference to control btnDownLoad : TBitBtn
  169. |
  170. 00401BFE   8B80A0030000           mov     eax, [eax+$03A0]
  171. 00401C04   8B08                   mov     ecx, [eax]
  172.  
  173. * Possible reference to virtual method TBitBtn.OFFS_5C
  174. |
  175. 00401C06   FF515C                 call    dword ptr [ecx+$5C]
  176. 00401C09   59                     pop     ecx
  177. 00401C0A   59                     pop     ecx
  178. 00401C0B   5D                     pop     ebp
  179. 00401C0C   C3                     ret



Volevo sapere se ero nella strada giusta, e in tal caso come fare per cambiare la porta seriale in COM2


Grazie a chiunque riesca ad aiutami nella mia impresa

PM Quote
Avatar
pierotofy (Admin)
Guru^2


Messaggi: 6230
Iscritto: 04/12/2003

Segnala al moderatore
Postato alle 0:55
Domenica, 15/09/2013
Far girare la seconda istanza del programma su Virtualbox no? Sarebbe molto piu' semplice...


Il mio blog: https://piero.dev
PM Quote
Avatar
criscros1989 (Normal User)
Newbie


Messaggi: 2
Iscritto: 14/09/2013

Segnala al moderatore
Postato alle 13:06
Domenica, 15/09/2013
si lo so bene ma vorrei appunto modificare il software, se possibile ovviamente, ho fato delle modifiche alla macchina per avere 2 controller, normalemente ne controlli solo uno e l'altro lo controlli mnualmente ma non ha senso allora controllarne solo uno.
Grazie comunque della risposta

PM Quote
Avatar
pierotofy (Admin)
Guru^2


Messaggi: 6230
Iscritto: 04/12/2003

Segnala al moderatore
Postato alle 23:16
Domenica, 15/09/2013
Non riesco a capire cosa intendi (e non capisco perche' Virtualbox non ti va come soluzione).


Il mio blog: https://piero.dev
PM Quote