|
|
|
Чужая DLL в моем приложении
|
|||
|---|---|---|---|
|
#18+
нашел в чужом ПО, как мне кажется искомую DLL с многообещающей функцией. По сути, мне нужно написать приложение, которое будет запускать функцию из данной DLL и передавать параметры на вход, и складывать параметры на выходе. tdump.exe Cal452.dll Turbo Dump Version 6.5.2.0 Copyright (c) 1988-2015 Embarcadero Technologies, Inc. Display of File cal452.dll Old Executable Header DOS File Size 1B000h (110592. ) Load Image Size 450h ( 1104. ) Relocation Table entry count 0000h ( 0. ) Relocation Table address 0040h ( 64. ) Size of header record (in paragraphs) 0004h ( 4. ) Minimum Memory Requirement (in paragraphs) 0000h ( 0. ) Maximum Memory Requirement (in paragraphs) FFFFh ( 65535. ) File load checksum 0000h ( 0. ) Overlay Number 0000h ( 0. ) Initial Stack Segment (SS:SP) 0000:00B8 Program Entry Point (CS:IP) 0000:0000 Portable Executable (PE) File Header base: 00000100 CPU type 80386 Flags 2102 [ executable linenumbers symbols backwards 32bit library ] DLL flags 0000 [ ] Linker Version 8.0 Time stamp 5E451473 : Thu Feb 13 12:18:43 2020 O/S Version 4.0 User Version 0.0 Subsystem Version 4.0 Subsystem 0002 [ Windows GUI ] Object count 00000005 Symbols offset 00000000 Symbols count 00000000 Optional header size 00E0 Magic # 10B Code size 00010000 Init Data size 0000A000 Uninit Data size 00000000 Entry RVA 0000EA0C Image base 10000000 Code base 00001000 Data base 00011000 Object/File align 00001000/00001000 Reserved 00000000 Image size 0001B000 Header size 00001000 Checksum 0001DD50 Stack reserve/commit 00100000/00001000 Heap reserve/commit 00100000/00001000 Number interesting RVAs 00000010 Name RVA Size ------------------ -------- -------- Exports 000169C0 0000033D Imports 000143AC 00000078 Resources 00018000 00000568 Exceptions 00000000 00000000 Security 00000000 00000000 Fixups 00019000 00001D74 Debug 00000000 00000000 Description 00000000 00000000 Global Ptr 00000000 00000000 TLS 00000000 00000000 Callbacks 00012948 00000040 Bound Imports 00000000 00000000 Import Addr Table 00011000 000002C4 Delayed Imports 00000000 00000000 COM Runtime 00000000 00000000 reserved 00000000 00000000 Object table: # Name VirtSize RVA PhysSize Phys off Flags -- -------- -------- -------- -------- -------- -------- 01 .text 0000FAFE 00001000 00010000 00001000 60000020 [CER] 02 .rdata 00005CFD 00011000 00006000 00011000 40000040 [IR] 03 .data 000006A0 00017000 00001000 00017000 C0000040 [IRW] 04 .rsrc 00000568 00018000 00001000 00018000 40000040 [IR] 05 .reloc 00001FEE 00019000 00002000 00019000 42000040 [DIR] Key to section flags: C - contains code D - discardable E - executable I - contains initialized data R - readable W - writeable ************************** Section: Import File Offset: 00011000 (69632) ImportLookUpTblRVA:00014424 Time Stamp: 00000000 Forwarder Chain: 00000000 (index of first forwarder reference) Imports from COMMVEH32.dll (hint = 017D) ?getstatus@Buf@@QAEIXZ (hint = 0118) ?clear@Buf@@QAEID@Z (hint = 0205) ?set@Buf@@QAEIPADH@Z (hint = 00BA) ?OpenDefaultMessagerie@Buf@@QAEIXZ (hint = 0122) ?destroyServiceUnit@Buf@@QAEIXZ (hint = 0120) ?createServiceUnit@Buf@@QAEIPBDPAD_N1@Z (hint = 0121) ?destroyService@Buf@@QAEIXZ (hint = 011F) ?createService@Buf@@QAEIPBD@Z (hint = 020F) ?setstatus@Buf@@QAEXW4T_CM_SectionError@@DPAD@Z (hint = 0080) ?ExecuteFnc@Buf@@QAEIPBDAAVStock@@@Z (hint = 017E) ?getstatuscom@Buf@@QAEIXZ (hint = 0140) ?get@Buf@@QAEIPADII@Z (hint = 0141) ?get@Buf@@QAEIPAEI@Z (hint = 011E) ?concat@Buf@@QAEIPAV1@@Z (hint = 01DA) ?move@Buf@@QAEIPAV1@II@Z (hint = 0200) ?set@Buf@@QAEIEI@Z (hint = 0201) ?set@Buf@@QAEIFI@Z (hint = 0077) ?DejaDedans@Buf@@QAEHPADIIIE@Z (hint = 0036) ??1Buf@@QAE@XZ (hint = 001F) ??0Buf@@QAE@XZ (hint = 00C4) ?SetContexteTEP@Stock@@QAEIPAD0@Z (hint = 0181) ?identifyEcuVersion@Buf@@QAEIJ@Z (hint = 0157) ?getRequestsAndParametersIdent@Buf@@QAEIXZ (hint = 0085) ?GetDescList@Buf@@QAEIPBDH@Z (hint = 017C) ?getsizebuf@Buf@@QAEJXZ (hint = 0146) ?get@Buf@@QAEIPAV1@IIH@Z (hint = 0153) ?getMessagerieServiceUnitsName@Buf@@QAEIAAJPBD_N@Z (hint = 0062) ?AFputstatus@Buf@@QAEXDPAD@Z (hint = 01D9) ?move@Buf@@QAEIPAV1@@Z (hint = 0206) ?set@Buf@@QAEIPADII@Z (hint = 00B6) ?IsProtocolCan@Buf@@QAE_NXZ (hint = 011A) ?com@Buf@@QAEIQADPAV1@@Z (hint = 00D2) ?Temporisation@@YAXK@Z (hint = 00CF) ?Sort_Faults@@YADAAVBuf@@@Z (hint = 01B6) ?mGetTableLID@C_CTX_FunContext@@QBEPAVTableLID@@XZ (hint = 00CD) ?SetTableLIDPleine@TableLID@@QAEXH@Z (hint = 00AA) ?GetTableLIDPleine@TableLID@@QBEHXZ (hint = 0065) ?AffichTableLID@TableLID@@QBEXXZ (hint = 0095) ?GetListFamLID@TableLID@@QBEHPAE@Z (hint = 008B) ?GetECUName@TableLID@@QBEXPAD@Z (hint = 00C0) ?RemplirTableLID@TableLID@@QAE?AW4STATUS_LID@@XZ (hint = 008A) ?GetECUFrame@TableLID@@QAEXPAVBuf@@@Z Imports from DLL_PGP.dll (hint = 07F3) ?output@GestDebug@@QBAXHPBDZZ (hint = 043F) ?Instance@GestDebug@@SAPAV1@XZ (hint = 0376) ?ExecuteComInitFin@@YA_NPADW4T_SERVICEUNIT_TYPE@@AAVStock@@@Z (hint = 03F0) ?GetMnemoRT@GestComBuf@@SAHAAVBuf@@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAV34@@Z (hint = 032A) ?BufToString@@YA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAVBuf@@@Z (hint = 04C8) ?SetMnemo@GestComBuf@@SA_NAAVBuf@@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@1H@Z (hint = 070E) ?getRawMnemo@GestComBuf@@QAEHAAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@ABV23@@Z (hint = 05BD) ?execute@GestComBuf@@QAE_NPAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z (hint = 03C4) ?GetChaineBuf@@YAHAAVBuf@@HAAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z (hint = 01B1) ??1GestComBuf@@UAE@XZ (hint = 0102) ??0GestComBuf@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@0@Z (hint = 043E) ?Instance@ConfPgp@@SAPAV1@XZ (hint = 0499) ?RecupValParam@@YA_NAAVStock@@W4T_PARAM_TYPE@@PAVCmd_Mess@@_N@Z (hint = 0197) ??1Cmd_Mess@@UAE@XZ (hint = 00BE) ??0Cmd_Mess@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@0W4T_PARAM_TYPE@@W4TypeFonction@@PAVStock@@@Z (hint = 0746) ?getValues@ConfPgp@@QBEPBQBEPBE@Z (hint = 04D5) ?SetPrivateInfo@GestAppContext@@QAEXABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z (hint = 04D3) ?SetParamValue@GestAppContext@@QAEFABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@0_N@Z (hint = 03A1) ?FormatExitBuffer@GestAppContext@@QAEAAVBuf@@AAVStock@@@Z (hint = 033D) ?ClearFreeZone@GestAppContext@@QAEXXZ (hint = 01B0) ??1GestAppContext@@UAE@XZ (hint = 0100) ??0GestAppContext@@QAE@PAVStock@@@Z (hint = 04EB) ?Split@GestComBuf@@SAHABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAV?$vector@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$allocator@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@3@D@Z (hint = 05BC) ?execute@GestComBuf@@QAE_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@W4eTypeCalculCRC@@PAV23@@Z (hint = 000B) ??0CCCP@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@0PAVStock@@W4T_PARAM_TYPE@@00@Z (hint = 073C) ?getTypedService@CCCPActia@@SA?AV?$vector@US_FrameIdentifier@@V?$allocator@US_FrameIdentifier@@@std@@@std@@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@3@@Z (hint = 068A) ?getECUFrame@CCCPActia@@QAE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ (hint = 0150) ??1CCCP@@UAE@XZ (hint = 0574) ?changeServicesAndServicesUnitsNames@TlcdDLPR@@QAEXAAVBuf@@@Z (hint = 04F6) ?TelecodageRun@TlcdDLPR@@QAEXAAVStock@@W4eTypeAlgoConfPoss@@@Z (hint = 01C9) ??1TlcdDLPR@@UAE@XZ (hint = 0143) ??0TlcdDLPR@@QAE@AAVBuf@@PAVStock@@@Z (hint = 03FE) ?GetParamValue@GestAppContext@@QAEFABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAV23@@Z (hint = 04C9) ?SetMnemoRT@GestComBuf@@SA_NAAVBuf@@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@1@Z (hint = 07EE) ?manage@C_DataWriteManager@@QAE_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAV23@@Z (hint = 0165) ??1C_DataWriteManager@@UAE@XZ (hint = 003C) ??0C_DataWriteManager@@QAE@PAVStock@@@Z (hint = 090D) ?toString@GestComBuf@@SAXPBEHAAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z (hint = 090C) ?toBinary@GestComBuf@@SAXABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAPAEAAH@Z (hint = 00BA) ??0Cmd_Mess@@QAE@AAVStock@@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@1@Z (hint = 0383) ?ExecuteTrame@@YA_NPADW4T_SERVICEUNIT_TYPE@@PAVCmd_Mess@@HAAVStock@@W4eTypeCalculCRC@@PAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z (hint = 0323) ?AnswerECUParametre@@YA_NAAVStock@@W4T_PARAM_TYPE@@@Z (hint = 057C) ?checkServiceInDSD@CCCPActia@@SA_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAW4eExitStatus@@@Z (hint = 057B) ?checkServiceAndServiceUnitInDSD@CCCPActia@@SA_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@0AAW4eExitStatus@@@Z (hint = 04D7) ?SetPrivateInfo@GestAppContext@@QAEXW4eExitStatus@@PAEHABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z (hint = 0739) ?getType@JobException@@QAE?AW4ExceptionType@@XZ (hint = 0432) ?IdValid@DlgCom@@2IB (hint = 0436) ?Infinite@DlgCom@@2IB (hint = 031C) ?AfficheDlg_Mess@Dlg_Mess@@QAEHHABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@00JW4TypeTempo@@H_N2@Z (hint = 01A8) ??1Dlg_Mess@@UAE@XZ (hint = 00E5) ??0Dlg_Mess@@QAE@_N@Z (hint = 0322) ?AnswerECUCom@@YA_NAAVStock@@@Z (hint = 050B) ?Update@GestAppContext@@QAEXXZ Imports from MSVCP80.dll (hint = 05C9) ?_Unlock@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEXXZ (hint = 0B40) ?setstate@?$basic_ios@DU?$char_traits@D@std@@@std@@QAEXH_N@Z (hint = 0BE0) ?uncaught_exception@std@@YA_NXZ (hint = 054F) ?_Lock@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEXXZ (hint = 0B6F) ?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHD@Z (hint = 07DC) ?find@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEIABV12@I@Z (hint = 0574) ?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEXXZ (hint = 0B82) ?str@?$basic_ostringstream@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ (hint = 0016) ??$?6DU?$char_traits@D@std@@V?$allocator@D@1@@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@0@AAV10@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@0@@Z (hint = 0167) ??0?$basic_ostringstream@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@H@Z (hint = 081D) ?flush@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV12@XZ (hint = 0B72) ?sputn@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHPBDH@Z (hint = 0ABB) ?replace@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@IIPBD@Z (hint = 09AD) ?npos@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@2IB (hint = 0653) ?compare@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEHABV12@@Z (hint = 0065) ??$?HDU?$char_traits@D@std@@V?$allocator@D@1@@std@@YA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@0@ABV10@0@Z (hint = 0067) ??$?HDU?$char_traits@D@std@@V?$allocator@D@1@@std@@YA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@0@ABV10@PBD@Z (hint = 02B4) ??4?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV01@PBD@Z (hint = 0B9A) ?swap@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEXAAV12@@Z (hint = 02B2) ??4?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV01@ABV01@@Z (hint = 017E) ??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ (hint = 0172) ??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@ABV01@@Z (hint = 035C) ??Y?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV01@ABV01@@Z (hint = 035E) ??Y?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV01@PBD@Z (hint = 025E) ??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ (hint = 002D) ??$?8DU?$char_traits@D@std@@V?$allocator@D@1@@std@@YA_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@0@PBD@Z (hint = 040A) ??_D?$basic_ostringstream@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEXXZ (hint = 0179) ??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@PBD@Z Imports from MSVCR80.dll (hint = 04F4) free (hint = 0172) _encode_pointer (hint = 0293) _malloc_crt (hint = 0173) _encoded_null (hint = 0168) _decode_pointer (hint = 0210) _initterm (hint = 0211) _initterm_e (hint = 011D) _amsg_exit (hint = 0113) _adjust_fdiv (hint = 006D) __CppXcptFilter (hint = 0153) _crt_debugger_hook (hint = 0043) ?terminate@@YAXXZ (hint = 0036) ?_type_info_dtor_internal_method@type_info@@QAEXXZ (hint = 008F) __clean_type_info_names_internal (hint = 03F3) _unlock (hint = 0099) __dllonexit (hint = 0282) _lock (hint = 0328) _onexit (hint = 017B) _except_handler4_common (hint = 056A) strncmp (hint = 04CF) atoi (hint = 0021) ??_V@YAXPAX@Z (hint = 0556) sprintf (hint = 0008) ??0exception@std@@QAE@ABV01@@Z (hint = 0006) ??0exception@std@@QAE@ABQBD@Z (hint = 0009) ??0exception@std@@QAE@XZ (hint = 0011) ??3@YAXPAX@Z (hint = 000D) ??1exception@std@@UAE@XZ (hint = 0046) ?what@exception@std@@UBEPBDXZ (hint = 0216) _invalid_parameter_noinfo (hint = 000F) ??2@YAPAXI@Z (hint = 055A) sscanf (hint = 0076) __CxxFrameHandler3 (hint = 053A) memset (hint = 005D) _CxxThrowException Imports from KERNEL32.dll (hint = 0229) InterlockedExchange (hint = 0226) InterlockedCompareExchange (hint = 035E) TerminateProcess (hint = 0142) GetCurrentProcess (hint = 036E) UnhandledExceptionFilter (hint = 034A) SetUnhandledExceptionFilter (hint = 0239) IsDebuggerPresent (hint = 008B) DisableThreadLibraryCalls (hint = 02A3) QueryPerformanceCounter (hint = 01DF) GetTickCount (hint = 0146) GetCurrentThreadId (hint = 0143) GetCurrentProcessId (hint = 01CA) GetSystemTimeAsFileTime (hint = 0356) Sleep ************************** Section: Exports File Offset: 00011000 (69632) Flags: 00000000 Time Stamp: 5E451473 : Thu Feb 13 12:18:43 2020 Major Version: 0000 Minor Version: 0000 Exports from Cal452.dll 32 exported name(s), 32 export addresse(s). Ordinal base is 1. Sorted by Name: RVA Ord. Hint Name -------- ---- ---- ---- 0000A680 1 0000 ACTEVARDRADM2853 0000B040 2 0001 ACTEVARDRECH2854 0000BA00 3 0002 ACTEVARGAADM2855 0000C3C0 4 0003 ACTEVARGAECH2856 00007F80 5 0004 ACTEVAVDRADM2849 00008940 6 0005 ACTEVAVDRECH2850 00009300 7 0006 ACTEVAVGAADM2851 00009CC0 8 0007 ACTEVAVGAECH2852 0000CD80 9 0008 ACTFREIN2857 00007660 10 0009 ACTLAMPABS2847 00006D40 11 000A ACTPOMPE2846 00006410 12 000B ACTRELAIS2845 00002BA0 13 000C APPGEN61 00004A10 14 000D APPGEN_RAW152 00004E00 15 000E CHECK_SERVICE162 00005210 16 000F CLOSE_COMM215 000048E0 17 0010 DATAWRITE143 00004C90 18 0011 EFFDEF157 0000D460 19 0012 EFFDEFGLOBAL2929 00001310 20 0013 FINDIAG52 00003040 21 0014 FINDMEMZONE77 0000E120 22 0015 GET_ECU_REPONSE4203 00004130 23 0016 GET_SEED132 00001000 24 0017 INITDIAG51 000049D0 25 0018 ISPROTOCOLCAN151 0000D520 26 0019 LECTDEF2970 000016B0 27 001A LECTUREZI53 00005070 28 001B OPEN_COMM214 00004500 29 001C SEND_KEY133 00004090 30 001D TLCD_DLPR128 00002760 31 001E TRAMEGEN56 00005750 32 001F VARCONTEXTE1187 ************************** Section: Resources File Offset: 00018000 (98304) Flags: 00000000 Time Stamp: 00000000 Major Version: 0004 Minor Version: 0000 Resources: Type Name Lang Id -------------------------------------------- [0 named entries, 2 ID entries] type: Version (16) (next directory @00000020) [0 named entries, 1 ID entries] type: Cursor (1) (next directory @00000050) [0 named entries, 1 ID entries] type: Unknown (1036) (data @00000080) Offset: 000180A0 Size: 00000374 Code Page: 000004E4 Reserved: 00000000 type: Manifest (24) (next directory @00000038) [0 named entries, 1 ID entries] type: Bitmap (2) (next directory @00000068) [0 named entries, 1 ID entries] type: Unknown (1033) (data @00000090) Offset: 00018414 Size: 00000154 Code Page: 000004E4 Reserved: 00000000 Так я нашел названия функций ... 00004130 23 0016 GET_SEED132 ... 00004500 29 001C SEND_KEY133 Но я совсем не понимаю, как их вызвать. А вернее как определить тип параметров в эти функции и какие типы и какой набор выходных параметров. Подскажите, пожалуйста ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2020, 17:47 |
|
||
|
Чужая DLL в моем приложении
|
|||
|---|---|---|---|
|
#18+
ДвоичникА вернее как определить тип параметров в эти функции и какие типы и какой набор выходных параметров. Идёшь на сайт разработчика этой библиотеки и скачиваешь SDK к ней или документацию по её использованию. Там это всё должно быть описано. Другого способа - нет. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2020, 17:56 |
|
||
|
Чужая DLL в моем приложении
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov ... этой библиотеки и скачиваешь SDK к ней или документацию ... Не существует оный ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2020, 18:10 |
|
||
|
Чужая DLL в моем приложении
|
|||
|---|---|---|---|
|
#18+
31.08.2020 18:10, Двоичник пишет: > > Не существует оный > no way out Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2020, 18:14 |
|
||
|
Чужая DLL в моем приложении
|
|||
|---|---|---|---|
|
#18+
ДвоичникНе существует оный Значит не существует и способа использовать эту библиотеку. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2020, 18:16 |
|
||
|
Чужая DLL в моем приложении
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, Существуют. Берём приложение, которое использует эту библиотеку. Ищем в нём вызов данной функции в ассемблерном виде, и смотрим как она вызывается. Дела закрыта. Расходимся. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2020, 18:18 |
|
||
|
Чужая DLL в моем приложении
|
|||
|---|---|---|---|
|
#18+
FileName cal451.dll Comments Cal VCI Library for vehicle - Microsoft Visual Studio 2005 BSG_E VCI Library for vehicle A9 - Microsoft Visual Studio 2005 - 8.0.50727.42 InternalName Cal BSG_E ProductName Projet Outil Logiciel Unique Expert -? Projet Outil Logiciel Unique Expert ? CompanyName ACTIA ? Group LegalCopyright Copyright ? ACTIA 2006 ProductVersion 1916 75.03.1365 release version 76.05.1394 release version FileDescription Cal VCI Library BSG_E VCI Library LegalTrademarks - PrivateBuild - OriginalFilename Cal Cal451.dll SpecialBuild - Пока это все что поиск дал ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2020, 18:20 |
|
||
|
Чужая DLL в моем приложении
|
|||
|---|---|---|---|
|
#18+
Сам по себе вызов функции может быть не единственным необходимым условием. Библиотека может нуждаться в правильной инициализации определёнными вызовами, прежде чем можно будет вызвать функцию. Примите во внимание необходимость правильной обработки ошибок и работы с памятью. Короче, пытаться "наугад" вызвать функцию из DLL чревато написанием говно-кода, который будет ломаться от чиха в соседней комнате. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2020, 18:51 |
|
||
|
Чужая DLL в моем приложении
|
|||
|---|---|---|---|
|
#18+
Вероятно я ошибаюсь в концептуальном подходе По мне так ПО, к которому эта DLL родная на вход принимает один HEX код в качестве параметра, и чудным алгоритмом генерирует другой HEX код. Вот и стоит задача, заставить моё приложение подавать в DLL определенный код на вход, а с помощью DLL на выходе получать ожидаемый код. Но... Я действительно не учитываю вероятные кейсы с использованием функций из других DLL и вероятные генерации входного параметра от среды и я не знаю полный набор входных и выходных параметров. Что касается регистрации, то если я правильно понимаю, родное ПО, откуда скопирована данная DLL, установлено на том же ПК, где я пытаюсь ее вскрыть. Иными словами она зарегистрирована родным ПО и находятся в домашней среде. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2020, 22:12 |
|
||
|
Чужая DLL в моем приложении
|
|||
|---|---|---|---|
|
#18+
Двоичник Но я совсем не понимаю, как их вызвать. А вернее как определить тип параметров в эти функции и какие типы и какой набор выходных параметров. Подскажите, пожалуйста Как я понял, это как-то связано с французкими булками машинами. Обе функции на вход принимают указатель на что-то, возможно, на строку, возможно, на объект. Код C++ - ковыряться с этим придется долго, если хорошо не знаешь код, создаваемый c++. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2020, 22:14 |
|
||
|
Чужая DLL в моем приложении
|
|||
|---|---|---|---|
|
#18+
ДвоичникИными словами она зарегистрирована родным ПО Не хочу тебя расстраивать, но, во-первых, DLL не требуют "регистрации", а во-вторых, вопросы взлома чужих продуктов на этом форуме запрещены. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2020, 22:22 |
|
||
|
Чужая DLL в моем приложении
|
|||
|---|---|---|---|
|
#18+
x1ca4064 ... Как я понял, это как-то связано с французкими булками машинами. именно так Dimitry Sibiryakov ...во-вторых, вопросы взлома чужих продуктов на этом форуме запрещены. Никто не говорит о взломе. Мне нужно переиспользовать функцию из DLL для составления словаря генерируемых кодов. В реалии стоит задача реализовать свой конфигуратор "французских булок" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2020, 22:27 |
|
||
|
Чужая DLL в моем приложении
|
|||
|---|---|---|---|
|
#18+
Эта задача решается через техподдержку производителя. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2020, 22:35 |
|
||
|
Чужая DLL в моем приложении
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov Эта задача решается через техподдержку производителя. Слишком просто. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2020, 22:39 |
|
||
|
Чужая DLL в моем приложении
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov Эта задача решается через техподдержку производителя. Техподдержка производителя заинтересована развивать собственный продукт, а не помогать изыскателям переиспользовать их код. Да, я действую не официально, но это мой собственный эксперимент над моей собственной французской булкой. Однако знаний не хватает, чтобы реализовать собственные фантазии. Мысль есть, и я ее думаю! Однако за достижением фантазии, я пришел сюда ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2020, 22:58 |
|
||
|
Чужая DLL в моем приложении
|
|||
|---|---|---|---|
|
#18+
Двоичник, Поставь в IDE приложение на дебагер, и через ассемблер посмотри что куда передаётся. И какие данные куда ссылаются, и чем данные являются. И дело закончено. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2020, 23:06 |
|
||
|
Чужая DLL в моем приложении
|
|||
|---|---|---|---|
|
#18+
ВсеРазумный, Научи пожалуйста. IDE есть только D10.2 Но пользоваться дебагером с асмом, признаюсь, не умею ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2020, 23:09 |
|
||
|
Чужая DLL в моем приложении
|
|||
|---|---|---|---|
|
#18+
Двоичник, Вкладка run и там пункты LoadProcess и attach to process Гугли. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2020, 23:30 |
|
||
|
Чужая DLL в моем приложении
|
|||
|---|---|---|---|
|
#18+
Двоичник ВсеРазумный, Научи пожалуйста. IDE есть только D10.2 Но пользоваться дебагером с асмом, признаюсь, не умею Он тебя сперва пэхапэ научит, а потом курить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2020, 23:37 |
|
||
|
Чужая DLL в моем приложении
|
|||
|---|---|---|---|
|
#18+
ъъъъъ, PHP не научить - им нужно жить. (c) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.09.2020, 00:01 |
|
||
|
Чужая DLL в моем приложении
|
|||
|---|---|---|---|
|
#18+
Двоичник Никто не говорит о взломе. Мне нужно переиспользовать функцию из DLL И так ясно, что ты хочешь научиться получать какой-то хэш, генерируемый этой библиотекой. Я сомневаюсь, что автор этой длл дал добро на такие эксперименты. Даже если ты приобрёл это ПО на законных основаниях, ты должен выполнять условия лицензии. Вряд ли там не написано что-то вроде авторэта лицензия не предоставляет вам права: (i) отдельно использовать или виртуализировать компоненты программного обеспечения ; (ii) публиковать или копировать (за исключением разрешенной резервной копии) программное обеспечение (iii) передавать программное обеспечение (за исключением случаев, предусмотренных настоящим соглашением); (iv) пытаться обойти технические ограничения в программном обеспечении; (v) использовать программное обеспечение в качестве серверного программного обеспечения (vi) изучать технологию, декомпилировать или деассемблировать программное обеспечение, а также предпринимать соответствующие попытки Такое очень часто пишут, если не всегда, когда речь идёт о проприетарном ПО (а речь идёт о нём). То, что ты делаешь - нарушает многие из этих пунктов. И это запрещено обсуждать на этом форуме, что правильно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.09.2020, 06:19 |
|
||
|
Чужая DLL в моем приложении
|
|||
|---|---|---|---|
|
#18+
YuRock, я перечитал правила форума https://www.sql.ru/forum/rules.aspx Чего и Вам рекомендую. Ничего запрещающего об исследовании чужого ПО я там не нашел. Что касается правил пользования сторонним ПО, то да, есть ограничения по декомпиляции и диспозиту. Но даже если бы я тут попросил помочь разобрать мою dll, не сообщая о ее внутренней структуре это изменило бы Ваше предсталение о подходе к требуемоей работе моего приложения? Зная структуру любой напишет софт. Вопрос в настоящее время именно о подходе к dll с неизвестной структурой. По мне так это сути не меняет. Я не намереваюсь видоизменять рабочий процесс существующего ПО. Существующее ПО формирует запрос функции dll и генерирурет нужный мне код, но для этого нужно сделать множество ручных кликов и это сильно замедляет процесс вызова, получения кода. Моя задача автоматизировать и значительно ускорить процесс подачи параметра и получения ответа от функции. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.09.2020, 10:07 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39994280&tid=2038029]: |
0ms |
get settings: |
7ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
156ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
| others: | 214ms |
| total: | 448ms |

| 0 / 0 |
