Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Rekomendowane odpowiedzi

Nowicjusz
Opublikowano

Witam wszystkich mpc forumowiczow. (Z gory zaznaczam, ze nie moge uzywac polskich znakow i bardzo prosze o wyrozumialosc.)

Interesuje sie programowaniem od jakiegos czasu. Juz jakis czas temu zaczalem sie interesowac AutoIt'em, ale nie byly to jakies skomplikowanie skrypty. Lecz jakis czas temu natknalem sie na program VNC Viewer. Nastepnie zauwazylem ze skladnia AutoIt'a pozwala na polaczenia miedzy komputerami przez TCP. I tu mam do Was pytanie: Czy za pomoca tego jezyka moge napisac program na wzor VNC Viewer'a, aby komputery nie tylko sie ze soba laczyly, ale tak jak w VNC mozna bylo widziec pulpit drugiej strony? Jesli tak, to prosilbym o odeslanie do jakiegos poradnika oraz o wytlumaczenie jak dziala taki podglad pulpitu jak w VNC. Z gory bardzo dziekuje (jesli w zlym dziale zamiescilem temat, prosze modow o przeniesienie go).

Opublikowano

Napisać sobie możesz ale poradnika  specjalnie nie napisze nikt  jak napisać taki program bo miał byś od razu  gotowy program.

 

Forum autoit i tam sobie szukaj podobnych tematów jak nie masz pomysłów

Mózg to nie mydło; nie ubędzie Ci go, gdy go użyjesz.

Nowicjusz
Opublikowano

Napisać sobie możesz ale poradnika  specjalnie nie napisze nikt  jak napisać taki program bo miał byś od razu  gotowy program.

 

Forum autoit i tam sobie szukaj podobnych tematów jak nie masz pomysłów

To ze mozna przeszukac forum to kazdy wie. Bardziej mialem na mysli jakis poradnik,ktory opisywalby jak tego typu programy dzialaja itd. Prosze tylko o posty ktore cos wnosza do dyskusji, a nie typu: "wyszukiwarka nie gryzie".

Opublikowano

Dokumentacje do darmowych programów, kody źródłowe, sterowniki zawsze są dostępne na stronach tego programu. Pewnie głównie po angielsku

 

Skoro jest dostępne publiczne , pozostaje ci napisać sobie program  współpracujący z nimi 

Mózg to nie mydło; nie ubędzie Ci go, gdy go użyjesz.

Opublikowano

Można wiedzieć czemu Cie ten temat zainteresował? Masz jakiś fany pomysł, chcesz to rozpracować w celach edukacyjnych czy może lubisz wymyślać koło na nowo? ;)

 

Czy się da? Oczywiście, że się da - w każdym normalnym języku można coś takiego zrobić (w końcu obsługa tcp, pobieranie obrazu itp to nie funkcja samego języka - on tylko wysyła zapytania do api windowsa). Mam natomiast wątpliwości co do wydajności takiego rozwiązania.

 

W dużym skrócie działa to mniej więcej tak:

Piszesz aplikacje klienta i serwera które nawiązują połączenie przez TCP (https://pl.wikibooks.org/wiki/AutoIt/Sie%C4%87#TCP) i przesyłają sobie dane za pomocą wybranego protokołu, czyli po prostu przesyłasz komunikaty i dane które klient/serwer zrozumie i odpowiednio przetworzy, zareaguje. Taki zestaw reguł komunikacji możesz zaprojektować sam jak chcesz się pobawić, możesz też użyć reguł zaproponowanych przez innych (jeśli piszesz tylko klienta lub tylko serwer łączący się zewnętrznym programem to nie tylko możesz a musisz) - VNC korzysta z protokołu RFB -> http://www.realvnc.com/docs/rfbproto.pdf (mocno zaawansowany, ale równie dobrze możesz zaplanować własny, o wiele bardziej prymitywny).

W twoim przypadku serwer pobiera ramki obrazu (https://pl.wikipedia.org/wiki/Bufor_ramki), pewnie je kompresuje jakoś (ten fragment tworze na poczekaniu) i przesyła, klient odbiera je i przekazuje do gui (pewnie musi je jeszcze obrobić czy cuś). Do tego powinna pewnie dojść jakaś obsługa szyfrowania i deszyfrowania, uwierzytelnianie i pewnie milion innych rzeczy, ale możesz zacząć od najprostszych funkcji.

 

Ps - nie znam się na tym, mogłem trochę nazmyślać, ale mam nadzieję, że naprowadziłem Cię trochę jak zacząć i czego szukać. Temat zgłębiałem przez jakieś pół godziny bo mnie zainteresował więc jeśli napisałem bzdury to proszę o naprostowanie.

Chcesz precyzyjnej i zrozumiałej odpowiedzi? - Zadaj precyzyjne i zrozumiałe pytanie. Nie przyjmuję zleceń.
Nie odpowiadam na priv na pytania, które można zadać na forum. Chcesz mojej pomocy - oznacz mnie w poście =>  @"Hans Kloss PL" 

Nowicjusz
Opublikowano

Można wiedzieć czemu Cie ten temat zainteresował? Masz jakiś fany pomysł, chcesz to rozpracować w celach edukacyjnych czy może lubisz wymyślać koło na nowo? ;)

 

Czy się da? Oczywiście, że się da - w każdym normalnym języku można coś takiego zrobić (w końcu obsługa tcp, pobieranie obrazu itp to nie funkcja samego języka - on tylko wysyła zapytania do api windowsa). Mam natomiast wątpliwości co do wydajności takiego rozwiązania.

 

W dużym skrócie działa to mniej więcej tak:

Piszesz aplikacje klienta i serwera które nawiązują połączenie przez TCP (https://pl.wikibooks.org/wiki/AutoIt/Sie%C4%87#TCP) i przesyłają sobie dane za pomocą wybranego protokołu, czyli po prostu przesyłasz komunikaty i dane które klient/serwer zrozumie i odpowiednio przetworzy, zareaguje. Taki zestaw reguł komunikacji możesz zaprojektować sam jak chcesz się pobawić, możesz też użyć reguł zaproponowanych przez innych (jeśli piszesz tylko klienta lub tylko serwer łączący się zewnętrznym programem to nie tylko możesz a musisz) - VNC korzysta z protokołu RFB -> http://www.realvnc.com/docs/rfbproto.pdf (mocno zaawansowany, ale równie dobrze możesz zaplanować własny, o wiele bardziej prymitywny).

W twoim przypadku serwer pobiera ramki obrazu (https://pl.wikipedia.org/wiki/Bufor_ramki), pewnie je kompresuje jakoś (ten fragment tworze na poczekaniu) i przesyła, klient odbiera je i przekazuje do gui (pewnie musi je jeszcze obrobić czy cuś). Do tego powinna pewnie dojść jakaś obsługa szyfrowania i deszyfrowania, uwierzytelnianie i pewnie milion innych rzeczy, ale możesz zacząć od najprostszych funkcji.

 

Ps - nie znam się na tym, mogłem trochę nazmyślać, ale mam nadzieję, że naprowadziłem Cię trochę jak zacząć i czego szukać. Temat zgłębiałem przez jakieś pół godziny bo mnie zainteresował więc jeśli napisałem bzdury to proszę o naprostowanie.

Dziekuje Ci za swietny komentarz. Co do Twojego pytania to tak naprawde i chce rozpracowac to w celach edukacyjnych najpierw, a pozniej "wymyslac kolo na nowo" :D . Juz taki jestem ze lubi poznawac jak cos dziala i zrobic/ napisac to po swojemu. Nie wiem czemu, ale tak juz mam ze troche boli mnie to ze korzystam z gotowych programow innych majac swiadomosc ze sam moge to stworzyc. :)

Opublikowano

Jak Ci się uda coś takiego napisać to chętnie zerknę.

 

PS Mam nadzieję, że nie wpadniesz na pomysł pisania OSa :D Chociaż jeśli nie planujesz zarabiać na programowaniu to możesz robić nawet i to ;)

Chcesz precyzyjnej i zrozumiałej odpowiedzi? - Zadaj precyzyjne i zrozumiałe pytanie. Nie przyjmuję zleceń.
Nie odpowiadam na priv na pytania, które można zadać na forum. Chcesz mojej pomocy - oznacz mnie w poście =>  @"Hans Kloss PL" 

Opublikowano

Nie musi pisać od podstaw, ma gotowe udf do Autoita napisane tylko sobie zaadoptować do swojego programu który dopiero sobie napisze od podstaw.

 

Chyba jak się uprze że chce mieć swój autorski to sobie sam najpierw udfkę napisze do obsługi a potem program.

Mózg to nie mydło; nie ubędzie Ci go, gdy go użyjesz.

Nowicjusz
Opublikowano

Jak Ci się uda coś takiego napisać to chętnie zerknę.

 

PS Mam nadzieję, że nie wpadniesz na pomysł pisania OSa :D Chociaż jeśli nie planujesz zarabiać na programowaniu to możesz robić nawet i to ;)

Aproppo OS'u w sumie czemu nie ale to dopiero prawdopodobnie po studiach. I prawdopodobnie nie sam, to jest strasznie czasochlonne. A przy okazji mam pytanie: Gdy mamy instalator jakiegos programu i w gui tego instalatora sa checkboxy. Jak zaznaczy albo odznaczyc takiego checkboxa? Dodam za pomoca klawiszy czyli funkcji Send() jest to niewykonalne.

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...