[Javalist] DLL-beli C++ asynchronous callback használata JAVA-ból.

Zsombor gzsombor at gmail.com
2014. Júl. 19., Szo, 12:33:48 CEST


Helló,

 Gondolom ezt is Te kérdezted:
http://stackoverflow.com/questions/24838772/how-to-call-c-c-asynchronous-callback-in-dll-from-java
Ez alapján nekem úgy tűnik, hogy előtte be kell regisztrálni a callback-et
INFA_LMRegisterCallback hívással. Azt meg elméletileg JNA-val nem bonyolult.

Üdv
 Zs




2014-07-19 9:34 GMT+02:00 Molnár Miklós <timortin at gmail.com>:

> Sziasztok,
>
> A tárgybeli (nekem nagyon nehéz) cuccot dobta a gép/sors. Nagyon szeretném
> megoldani, ha bárki, bármivel tudna segíteni, nagy örömet szerezne.
>
> Az előzmény/sztori a következő:
>
> * Informatica aranyárban mért ETL-szörnyeteget kellene működése közben
> monitoroznom (custom programmal).
>
> * Ez C/C++-ból triviális (készen van, ha csökevényesen is), de JAVA-ból
> kellene valami framework-szerűséget csinálni.
>
> * Az Informatica Server a Workflow-k, Task-ok végrehajtásáról
> értelemszerűen egy részletes event-színtű log-ot generál.
>
> * Ehhez hivatalos publikus interface-n keresztül hozzá lehet férni: úgy
> hívják Informatica Development Platform.
>
> * Adnak egy rakat dll-t (lib), és egy nagyon szűkkeblűen mért
> (értelmezésemben gyakorlatilag használhatatlan) doksit.
>
> * A gyári dll-ekhez hivatalosan C/C++-on és JAVA-n keresztül lehet
> hozzáférni (csak a szűkebb JAVA-hoz van javadoc, a bővebb C/C++-hoz semmi
> nincs).
>
> * A JAVA-s hozzáférést úgy oldották meg igen trükkösen, hogy a C/C++
> DLL-ek jelentősen szűkített hívását becsomagolták egy JavaLMApi.dll-be
> (azaz számomra nem hozzáférhető). Majd erre JavaLMApi.dll használatra írtak
> triviális JAVA-osztályokat (ami ugye hiába nem obfuszkáltak).
>
> * Na most - hát persze hogy - nekem olyan aszinkron callback
> (INFA_LMMonitorServerA) kéne a C/C++ pmlmapi.dll-ből, amit C/C++-ból
> könnyen lehet használni, de mivel a JAVA-oldalra nincs kivezetve, azaz
> közvetlenül kéne a C++ DLL-ből használnom JAVA-ban.
>
> A header-ben ez van a kérdéses aszinkron callback-re.
> PMLM_API_EXTSPEC INFA_API_STATUS
> INFA_LMMonitorServerA( INFA_UINT32 connectionId,
>                        struct INFA_LMAPI_MONITOR_SERVER_REQUEST_PARAMS
> *request,
>                        void *clientContext,
>                        INFA_UINT32 *requestId
>                      );
>
> Ami megvan, hogy JNA/JNI-vel hogyan tudom használni a kérdéses dll-t.Ami
> nincs meg az a naplózó aszinkron callback működésre bírása. Egyébként már
> az sokat segítene, ha annyi kiderülne mission impossible-e amit akarok. ;)
> Szerintem (érzésre) nem, de mit lehet tudni.
>
> MM
>
> PS: Egyébként meg azt gondolom szégyellje magát az Informatica, hogy
> rettenet mennyiségű pénzért cserébe, ilyen dokumentálatlan, félig
> implementált szutyokkal szúrja ki felhasználói szemét. ;)
>
> _______________________________________________
> Javalist mailing list
> Javalist at lists.javaforum.hu
> http://lists.javaforum.hu/mailman/listinfo/javalist
>
>
--------- következő rész ---------
Egy csatolt HTML állomány át lett konvertálva...
URL: <http://lists.javaforum.hu/pipermail/javalist/attachments/20140719/3a8e053b/attachment.html>


További információk a(z) Javalist levelezőlistáról