Call Library Function Node i callback

Tematy związane z tworzeniem dużych aplikacji. Zaganiednia dotyczące architektury oraz zasad tworzenia optymalnych rozwiązań.
vugie
Posty: 383
Rejestracja: 17 lis 2006 00:00
Wersja środowiska: LabVIEW 2009
Lokalizacja: Warszawa

Call Library Function Node i callback

Post autor: vugie »

Piszę program do obsługi aparatu cyfrowego wykorzystując SDK dostarczone przez producenta (w postaci DLL i *.h). To moje pierwsze starcie z obsługą DLL. Podstawowa komunikacja z aparatem już działa, udało mi się nawet ominąć problem tablic dłuższych niż 256 zawartych w strukturze (zamieniam jedną długą tablicę na kilka kolejnych klastrów po 256).
Żeby uzyskać z aparatu coś więcej niż tylko jak się nazywa, trzeba wywołać pewną funkcję, której jednym z argumentów jest callback pewnego typu, który później będzie wywoływany w odpowiedzi na określone zdarzenia. Da się zrobić tak, żeby tym callbackiem było jakieś VI? Czy trzeba pisać drugą DLL? Jak potem takie zdarzenie obsłużyć?
Awatar użytkownika
bartus
Posty: 141
Rejestracja: 07 maja 2007 00:00
Wersja środowiska: LabVIEW 2009
Lokalizacja: Wrocław/Żory

Re: Call Library Function Node i callback

Post autor: bartus »

hehehe

podobny problem byl rozwiazywany swego czasu gdzies.

Tez sie z tym spotkalem, ale jeszcze nie testowalem, polecam lekture

http://msmvps.com/blogs/vandooren/archi ... a-net.aspx

czyzby canon i funkcja viewfinder? :D
warto jeszcze najpierw sprawdzic czy aparat obsluguje dana funkcje.
Jest pare rzeczy dla których warto zyc - TO,UE i nie zmienia sie nic :)
vugie
Posty: 383
Rejestracja: 17 lis 2006 00:00
Wersja środowiska: LabVIEW 2009
Lokalizacja: Warszawa

Re: Call Library Function Node i callback

Post autor: vugie »

Canon i viewfinder, a także parę innych funkcji usprawniających wykorzystanie aparatu z mikroskopem

Ten aparat obsługuje viewfinder, ale w ogólnym przypadku, żeby to sprawdzić to trzeba ustawić callback :)

Dzięki za linka. Dosyć to dla mnie czarnomagiczne, nie udało mi się nawet przykładu uruchomić (problem z kompilacją testowego DLLa) i tylko pośrednią metodą udało mi się stwierdzić, że ma to szansę zadziałać.
Trochę mam wątpliwości czy uzależnianie się od .NET z takiego powodu ma uzasadnienie. Drugim wyjściem jest zrobienie drugiego DLLa z callbackami, ale niestety programista C ze mnie marny. Czy można z poziomu DLL wygenerować Dynamic User Event?
Awatar użytkownika
bartus
Posty: 141
Rejestracja: 07 maja 2007 00:00
Wersja środowiska: LabVIEW 2009
Lokalizacja: Wrocław/Żory

Re: Call Library Function Node i callback

Post autor: bartus »

ja jakos wiekszym programista nie jestem, wiec na moja odpowiedz raczej nie licz ;) bo sie nie znam
Jest pare rzeczy dla których warto zyc - TO,UE i nie zmienia sie nic :)
ZbychoZbych
Posty: 12
Rejestracja: 24 lip 2007 00:00

Re: Call Library Function Node i callback

Post autor: ZbychoZbych »

Testowałem i działa. Jeden problem który widzę to opóźnienie wywołań .net-tu, nawet dla "normalnych" funkcji, które jest znacznie mniejsze dla wywołań funkcji kodu niezarządzanego.
Zbyszek
ODPOWIEDZ