Jak zrobić zdjęcie z kamerki używając wbudowanego przycisku?

Odpowiedz Nowy wątek
2019-03-18 12:40
0

mam kamerkę, która ma przycisk na obudowie, który robi zdjęcie. Jednak ta funkcja działa tylko w dedykowanej aplikacji. Pewnie ten przycisk wysyła jakiś sygnał, który wywołuje funkcję przechwycenia obrazu.
Czy macie jakiś pomysł, jak przechwycić ten sygnał, abym mógł tego przycisku użyć w mojej aplikacji?

edytowany 1x, ostatnio: furious programming, 2019-03-18 17:09

Pozostało 580 znaków

2019-03-19 21:58
0

Sprawdziłem w IrfanView i po wybraniu sterownika TWAIN widzę obraz z kamerki. Mogę wcisnąć przycisk acquire i obraz zapisuje się na dysku.
Ale naciśnięcie przycisku na kamerze nie robi nic.
Pewnie wywołuje jakieś inne zdarzenie.

Pozostało 580 znaków

2019-03-20 17:31
0

no to część związana z przechwytywaniem obrazu można powiedzieć że nie będzie sprawiała problemu, możesz użyć mojego rozwiązania lub tego co polecił @PrzemysławWiśniewski są z tego co gdzieś czytałem jakieś biblioteki do tego, chyba VLC coś udostępnia?
Jednak jeśli chodzi o przycisk to musisz szukać dalej rozwiązania, może napisanie do producenta kamerki prośby o udostępnienie informacji coś by dało?

Rozumiem że przycisk działa tylko w momencie gdy działa aplikacja kamery, czyli nie jest to jakiś serwis w systemie tylko ta aplikacja przechwytuje jakieś zdarzenie. Po szpieguj ją np. programem spyxx

Pozostało 580 znaków

2019-03-22 21:44
0

Poszpiegowałem tę aplikację programem Spy++ i tam pokazał, że naciśnięcie przycisku na kamerze powoduje komunikat WM_USER+2
Więc napisałem najprostszą aplikację do obsługi tego komunikatu:

const
  WM_BUTTON = WM_USER + 2;

type
  TfrmMain = class(TForm)
    Memo1: TMemo;
  private
    procedure WmButton(var Msg : TMessage); message WM_BUTTON;
  public

  end;

var
  frmMain: TfrmMain;

implementation

{$R *.dfm}

{ TfrmMain }

procedure TfrmMain.WmButton(var Msg: TMessage);
begin
   Memo1.Lines.Add('button');
end;

Ale nadal nic się nie dzieje.
I tutaj mam pytanie. Czy mój program nie działa czy może ta kamera wyszukuje tę dedykowaną aplikację i do niej "wstrzykuje" ten komunikat i dlatego ja nie mogę go przechwycić. Jest to możliwe?

edytowany 1x, ostatnio: furious programming, 2019-03-23 01:39
Wstawiaj kod w znaczniki kolorujące składnię – ```pascal przed kodem, a po kodzie samo ```. Ogarnij to, bo każdy Twój post z kodem trzeba poprawiać. - furious programming 2019-03-23 01:40

Pozostało 580 znaków

2019-03-23 01:43
0
My Razem napisał(a):

Poszpiegowałem tę aplikację programem Spy++ i tam pokazał, że naciśnięcie przycisku na kamerze powoduje komunikat WM_USER+2

A kto jest odbiorcą tego komunikatu?

Wątpię, aby był on rozgłaszany, czyli wysyłany do wszystkich okien (odpowiednik HWND_BROADCAST), więc ta metoda nic Ci nie da, bo tego komunikatu Twoje okno po prostu nie otrzymuje. Przyda się najpierw założyć hooka, tak aby ten komunikat podsłuchać i dopiero wtedy można będzie zareagować.


edytowany 4x, ostatnio: furious programming, 2019-03-23 02:00

Pozostało 580 znaków

2019-03-23 08:14
0

Skoro kamera wysyła sygnał tylko do swojej aplikacji, to musi ją najpierw znaleźć. W jaki sposób może ją szukać?
Próbowałem nazwać moje okno tak jak tamten program ale nic to nie dało.

Pozostało 580 znaków

2019-03-23 16:56
0

Sprawdź tym swoim narzędziem kto jest odbiorcą tego komunikatu (uchwyt określ). Albo załóż globalnego hooka.


edytowany 2x, ostatnio: furious programming, 2019-03-23 16:59

Pozostało 580 znaków

2019-03-23 20:22
0

Mogę prosić o nakierowanie jak zrobić globalnego hooka na komunikaty? Wszędzie są tylko na klawiaturę lub mysz.
Pewnie łatwo to przerobić ale nie widzę tego...

Pozostało 580 znaków

2019-03-23 20:50
0

Zobacz tutaj: http://www.delphipages.com/forum/showthread.php?t=203324

Sam niewiele dłubię w WinAPI, dlatego też lepiej będzie, jeśli wypowie się ktoś bardziej obeznany w tych tematach. Myślę, że @kAzek, @olesio oraz @Stefan_3N będą w stanie pomóc.


Pozostało 580 znaków

2019-03-24 11:14
0

Widzialem tę stronke, ale nie rozumum w jakim celu jest tam uzywany plik tekstowy.

plik tekstowy to coś w stylu logu - robertz68 2019-03-24 12:29

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0