Widziałem kilka postów na ten temat, ale do tej pory nie widziałem żadnych rozwiązań. Mam plik .jar, który konwertuję do biblioteki .NET DLL przez IKVM. Próbuję dowiedzieć się, jak udostępnić metody w DLL w środowisku excel VBA. tutaj są szczegóły.Jak utworzyć .dll utworzone przy widocznym kodzie IKVM?
1.) zainstalowany IKVM & zarejestrowany to DLL do GAC
2.) prowadził iKVM aby utworzyć .NET .dll (mytest.dll)
ikvmc mytest.jar
3.) zarejestrowany nowy .dll
regasm mytest.dll
4.) Stąd i stworzył projekt VB.NET i dodał mytest.dll i IKVM.OpenJDK.Core.dll jako odniesienia do projektu. Mam wtedy dostęp do metod w. Dll w .NET. To jest świetne!
5.) to, co naprawdę chcę zrobić, to móc również użyć .dll w VBA. Początkowo vba nie zaakceptowałby pliku .dll bezpośrednio, ponieważ jest biblioteką .net. Starałem się stworzyć bibliotekę typów:
regasm /codebase /tlb mytest.dll
Ten utworzony plik .tlb który jest miły, ale to nie rzucać się ostrzeżenie o bibliotece nie są silnie nazwie.
6.) Następnie załadowałem plik .tlb jako odniesienie w edytorze vba. Działa to jednak, gdy próbuję uzyskać dostęp do metod nic się nie wyświetla. Podobnie, jeśli zajrzę do przeglądarki obiektów dla mojej biblioteki, widzę moje dwie klasy, ale nie członków tych klas.
Dodatkowo, wyobrażam sobie, że prawdopodobnie potrzebuję również jakoś odwołać się do pliku IKVM.OpenJDK.Core.dll również w języku VBA. Jednak nie mogę tego zrobić, ponieważ jest to .NET .dll.
Czy ktoś dokonał konwersji pliku .jar na coś, co może być używane z VBA?
To całkowicie działało. Dziękuję bardzo za odpowiedź! – user2088580