ATNEL tech-forum https://forum.atnel.pl/ |
|
MkUsbDetector https://forum.atnel.pl/topic17661.html |
Strona 1 z 1 |
Autor: | mirekk36 [ 18 lut 2017, o 13:21 ] |
Tytuł: | MkUsbDetector |
Mały projekt programistyczny i przydatny komponencik do Delphi oraz C++ Builder'a |
Autor: | misiulu [ 18 lut 2017, o 13:29 ] |
Tytuł: | Re: MkUsbDetector |
Hehe jeszcze nie było tu wątku na forum więc napisałem na YT, ale jak już jest to wklejam też treść tutaj. to tak na szybkiego więc mogę się mylić, że tego nie ma Mam jeszcze kilka ciekawych propozycji po spojrzeniu na kod oraz aktualnie dostępnych funkcji mianowicie: - Wypisywanie portów com z dodatkowym opisem lub bez za pomocą GetAvaliableComPorts jest super. Przydałoby się natomiast, aby można było dostać się również za pomocą zmiennej w tej funkcji do tych informacji jak port i jego opis. Po co? Jeżeli chcielibyśmy reagować w programie tylko na konkretny opis portu i od razu łączyć go z numerem portu. Jak mniemam teraz trzeba by wyłuskiwać te stringi z comboBoxa bo mamy albo tekst z portem, albo tekst z razem z portem i opisem. Po prostu ułatwienie. - Funkcje OnUSBDetect i onVolumeDetect to rewelacja! Jednak do pełni szczęścia brakuje mi w tych funkcjach tego co jest w COM czyli GetAvaliableUSBDevices i tak samo GetAvaliableVolumes, aby sprawdzić czy przed wykonaniem działań z programu są dostępne dane urządzenia i wolumeny. Jednak miałoby to jeszcze większy sens jakby w tych funkcjach dało się jakoś dostać do informacji "pomiędzy tymi funkcjami". Czyli jak by można było powiązać jakoś dany volumen z urządzeniem USB lub portem COM. Po co? A no np. w mojej firmie przydałoby się to do backupów u klientów co robią dodatkowo na pendriva. Teraz są to skrypty powłoki co wykrywają numer seryjny i wolumen pena. Jednak jakby się dało w prosty sposób przed wykonaniem kopii backupu z programu sprawdzić czy dany pendrive jest już podłączony do komputera (czyli GetAvaliableUSBDevices) i od razu sprawdzić, jeżeli jest podłączony, jaką otrzymał literkę ... i wykonać kopię. Tak samo z portem COM, wykonać jakieś czynności wtedy dotyczące podłączonego konkretnego urządzenia. Nie wiem jak to technicznie jest do zrobienia , ale jeżeli są już funkcje, które wypisują te informacje po wykryciu podłączenia to raczej nie byłoby problemu zrobić to na żądanie (chyba) Dodać do tego jeszcze dobranie się w łatwy sposób do zwracanych informacji przez te funkcje i jak jeszcze dałoby się powiązać te informacje z USB, z wolumenami lub portami COM to mamy wtedy nieograniczone możliwości wykorzystania tego komponentu Takie moje skromne pomysły |
Autor: | mirekk36 [ 18 lut 2017, o 13:30 ] |
Tytuł: | Re: MkUsbDetector |
a ja zdążyłem już odpisać na YT - nawet nie wiedziałem że Tobie odpisywałem - a mogłem się domyślić boś Pan jest jednym z większych generatorów pomysłów |
Autor: | misiulu [ 18 lut 2017, o 14:00 ] |
Tytuł: | Re: MkUsbDetector |
hehe no tak, minęliśmy się z tym YT Tam też mam taką samą ksywkę jak tutaj Dziękuję za komplement hehe, ale to w połączeniu również z twoimi pomysłami i realizacją wychodzą dopiero super rzeczy To wkleję tutaj co mi opowiedziałeś, dla potomnych Cytuj: Pierwsza propozycja nawet nie musi spełniana bo JUŻ JEST bez wyłuskiwania stringów ... ale proszę poczekać na jakiś kolejny poradnik odnoszący się jak używać tego komponentu. Za to kolejne propozycje kolegi - już widzę oczami wyobraźni w wersji 1.1 tego komponentu masz Pan Rację - it must be! i będzie No i również co w międzyczasie zadałem pytanie niech jest tutaj. W sumie to pierwszy komponent twój w sprzedaży więc warto też wyjaśnić tę kwestie Cytuj: Nooo to super !!! już mi ślina leci a tak dla potwierdzenia jeszcze co do samej licencji to wystarczy ją raz kupić i będzie ona ważna na nowe wersje tego komponentu? (Jak w sumie w pozostałych twoich programach? ) czy będzie jakieś ograniczenie, wersjonowanie i ważność licencji tylko na konkretne wersje (bo tak jednak często jest w przypadku komponentów do Delphi i C++)
|
Autor: | mirekk36 [ 18 lut 2017, o 14:22 ] |
Tytuł: | Re: MkUsbDetector |
misiulu napisał(a): czy będzie jakieś ograniczenie, wersjonowanie i ważność licencji tylko na konkretne wersje Na razie jest plan że jeśli się ukaże wersja komponentu w której zmieni się na początku cyderka - to będzie to odpłatny UPGRADE ale też na razie i na najbliższą przyszłość nie palnuję (jak to ja zaraz takich wielkich zmian - MkAvrCalc też miał być 2.x.x.x.x i do dzisiaj nie ma Reasumując - raz zakupiona licencja będzie działać dla każdej wersji 1.x |
Autor: | mirekk36 [ 19 lut 2017, o 20:30 ] |
Tytuł: | Re: MkUsbDetector |
misiulu napisał(a): Jak mniemam teraz trzeba by wyłuskiwać te stringi z comboBoxa bo mamy albo tekst z portem, albo tekst z razem z portem i opisem. Po prostu ułatwienie. Żadne ułatwienie tu akurat nie jest potrzebne - przecież wystarczy że wyłączysz ptaszka czyli wywołasz GetAvailableComPorts bez drugiego argumentu albo z FALSE i masz bez żadnych opisów a na dodatek jeszcze jest numerek w postaci INTEGER w TObject każdej pozycji stringlisty - więc tu już NIC nie trzeba robić Za to dzisiaj w nocy i w ciągu dnia powstały dwa nowe zdarzenia OnNewComInfo() OnNevVolInfo() które już PIĘKNIE podają wszystkie potrzebne szczegóły na temat podłączanych portów COM i pendrajwów w jednym zdarzeniu Co więcej działa to nawet jeśli chodzi o Pendrajwy lepiej bo np te pendrajwy z książek Atnela mają po dwie partycje czyli po dwie literki dysków i każda partycja nazywa się inaczej. Poprzednio nie było takich rzeczy - a teraz ? Można rzucić okiem jak zaczyna to działać właśnie - co wróży rychłą wersję komponentu 1.1 .... spory rozwój ... jeszcze tylko muszę jedną rzecz dorobić |
Autor: | misiulu [ 19 lut 2017, o 20:58 ] |
Tytuł: | Re: MkUsbDetector |
SUUUPER! No coś pięknistego z tego powstaje mirekk36 napisał(a): Żadne ułatwienie tu akurat nie jest potrzebne - przecież wystarczy że wyłączysz ptaszka czyli wywołasz GetAvailableComPorts bez drugiego argumentu albo z FALSE i masz bez żadnych opisów a na dodatek jeszcze jest numerek w postaci INTEGER w TObject każdej pozycji stringlisty - więc tu już NIC nie trzeba robić W skrócie to chodziło mi o to: - tak jak mówisz jest dostęp do samego numerku portu chociażby z indeksu stringlisty. - Jest dostęp do tekstu np. "COM3" jeżeli damy drugi argument FALSE - No i trzeci przypadek z argumentem TRUE mamy "COM3" i opis np. BLUETOOTH DEVICE. No i o ten przypadek i opisy mi chodzi Mianowicie np. chciałbym sobie ograniczyć w mojej aplikacji same porty po grupie urządzeń i chciałbym, aby były do wyboru tylko same urządzenia BLUETOOTH, albo same Virtual Com PORT. To właśnie chętnie posortowałbym to po opisie lub wręcz ukrył resztę co akurat mnie w danej chwili nie interesują. No a dostęp do tych opisów jest teraz chyba tylko właśnie przez wyłuskiwanie go z tej pełnej nazwy razem z tekstem "COMX" tak? A dobrze by może właśnie było mieć jakiś łatwiejszy do tego dostęp mirekk36 napisał(a): OnNewComInfo() OnNevVolInfo() No teraz to bajki! Po informacjach widzę, że w przypadku portów COM jest w info ID, VID i PID urządzenia USB. Może warto dodać jeszcze te informacje w info o Volumenach jak się da. Wtedy można jednoznacznie stwierdzić, że dany wolumen jest z danego, konkretnego urządzenia USB? To teraz jeszcze tylko przypadek kiedy uruchomimy program i urządzenia były już wcześniej podłączone do komputera tak? Czy to jakoś się da za pomocą tych funkcji co już są? |
Autor: | misiulu [ 19 lut 2017, o 22:52 ] |
Tytuł: | Re: MkUsbDetector |
Jasne, teraz już widzę, że wspomniałeś o Objects i w nim dopiero index Moja ślepota, więc sorki mirekk36 napisał(a): Dla dysków przenośnych bo UWAGA! będą wykrywane nie TYLKO pendraki - ale też dyski USB !!! ... nie ma i nie musi być VID & PID ale za to mamy numerki SERIAL Volumenu, które w 100% identyfikują nam konkretny dysk/partycję .... Jak zawsze masz racje... nie pomyślałem tutaj... tutaj ta informacja zupełnie nie byłaby nam przydatna. Tak jak mówisz to co jest już zupełności wystarczy! mirekk36 napisał(a): widać tu nawet dwie partycje na Pendraku od Greenbooka a także dwa przenośne dyski USB podpięte do kompa - normalnie sam aż mlaskam z tych nowych funkcjonalności - bardzo mi się przydadzą Ja to się cieszę jak małe dziecko widząc co to już potrafi Już od jakiegoś czasu szykowałem się napisać właśnie jakąś apkę to dych backupów. Jednak z tym komponentem to raz, że będzie to możliwe w dużo prostszy, szybszy i przyjemniejszy sposób, dwa to nabrałem chęci w ogóle do tego i trzy to aż się zaśliniłem widząc tego screena co wkleiłeś powyżej :> |
Autor: | mirekk36 [ 20 lut 2017, o 07:27 ] |
Tytuł: | Re: MkUsbDetector |
Maciek_L napisał(a): Poniżej jeszcze screen z działania aplikacji. Qurczę aż się boję myśleć co to będzie później ... skoro już powstają na forum apki jak grzyby po deszczu a na dodatek fajnie wyglądające |
Autor: | Maciek_L [ 1 mar 2017, o 22:18 ] |
Tytuł: | Re: MkUsbDetector |
Mirku szalejesz Widzę, że mamy już wersję 1.2 Twojego komponentu - nie mogę doczekać się kolejnego poradnika aby usłyszeć o tych ulepszeniach |
Autor: | mirekk36 [ 2 mar 2017, o 00:32 ] |
Tytuł: | Re: MkUsbDetector |
Maciek_L napisał(a): Mirku szalejesz Widzę, że mamy już wersję 1.2 Twojego komponentu - nie mogę doczekać się kolejnego poradnika aby usłyszeć o tych ulepszeniach No właśnie dzisiaj miałem robić poradnik i okazało się że w pewnym zaawansowanym miejscu funkcjonalności nie działa jak trzeba - zawziąłem się na to jak .... dobra nie będę przeklinał .... i w końcu teraz przed 10 minutami skończyłem i musiałem niestety zapodać kolejną wersję 1.3 zapowiadam, że warto - będzie odjazd! .... albo innymi słowy mówiąc jazda bez trzymanki .... gwarantuję przeżycia jak w trakcie skoku na bandżi ... z MkUsbDetectorem .... Powiem, że po wprowadzeniu kilku nowych fiuczerów w jego bebechach - aż sam się łapię za głowę, że wcześniej pewne rzeczy robiłem zawsze na piechotę - a teraz ? .... a teraz panowie .... i Panie LECIMY ! ..... mam nadzieję, że jutro uda mi się już w końcu nagrać kolejny materiał wideo do usłyszenia |
Autor: | misiulu [ 2 mar 2017, o 21:47 ] |
Tytuł: | Re: MkUsbDetector |
Taaak! Czekamy z opadem szczen już na zaś |
Autor: | mirekk36 [ 2 mar 2017, o 23:09 ] |
Tytuł: | Re: MkUsbDetector |
Eeeeeh nie zdazylem dzisiaj nakrecic wideo ... cala noc i dzien dzisiaj walczylem z poprawkami komponentu ... juz jest ver 1.4 .... ale moze jutro mi sie uda |
Autor: | mirekk36 [ 5 mar 2017, o 11:45 ] |
Tytuł: | Re: MkUsbDetector |
misiulu napisał(a): Jednym słowem czy ten komponent jest tylko kompatybilny z najnowszym środowiskiem 10.1? No widzisz - wiem, że to problem i to spory - ale dla mnie jeszcze większym problemem byłaby teraz próba instalacji i kompilacji komponentu pod wszystkie starsze środowiska ... Pewnie zdajesz sobie sprawę z tego że byłaby to masakryczna ilość pracy - no chyba że o czymś nie wiem (też tak może być) ... poza tym nie wiem czy byłbym w stanie zdobyć wszystkie starsze środowiska a szczególnie C++ Builderowe .... chociaż .... hmmm zaraz jak miałem kupione BDS2006 to może i był tam BCC ... tak samo gdy miałem Delphi7 - musiałbym sprawdzić. Ale nawet gdyby tak było to i tak będą różnice np do wersji BCC 6.0 jak mi się wydaje misiulu napisał(a): Czy jest szansa, że ze starszymi będzie również? Wiesz jeśli upublicznię więcej swoich komponentów i będzie z tego jakiś rozsądny zarobek to wtedy będę w stanie przeznaczyć pieniądze na zakup innych środowisk żeby to zrobić ALE jeśli wiesz jak sobie radzić z kompilacją do starszych środowisk w inny sposób to daj mi proszę znać bo ja nie wiem niestety, pomimo że chciałbym pomóc |
Autor: | misiulu [ 5 mar 2017, o 12:51 ] |
Tytuł: | Re: MkUsbDetector |
Wydaje mi się, że oficjalnie ze strony Embarcadero można pobrać sobie wcześniejsze wersje programu mając licencję na nowszą wersję i powinno to działać. Szczegółów jednak nie znam Nie wiem w jaki sposób kompilować na starsze wersje. W sumie nigdy tego nie robiłem. Jednak nie potrzeba by było dla wszystkich, ewentualnie tylko dla tych co by się do Ciebie zgłosili Wtedy dużo mniej roboty by było. Ja bym wolał mieć na swojego pełnego 2009 bo mogę wtedy komercyjnie apkę napisać Tak poza tym mam też 10.1 darmowe i metodą prób i błędów brakujące biblioteki przekopiowałem po prostu z nowego do starego hehe. Jednak ostatecznie wyrzuciło mi błąd, że są błędy w procesie rejestracji tego komponentu także chyba taką partyzancką metodą nie pójdzie. Ewentualnie mogę Ci użyczyć zdalnego dostępu do środowiska, abyś mógł to skompilować na tę wersję 2009. Jednak pewnie z różnych względów nie będziesz chciał skorzystać z tej opcji ale jak coś to jest możliwość |
Autor: | mirekk36 [ 5 mar 2017, o 13:25 ] |
Tytuł: | Re: MkUsbDetector |
Ja mam dostęp do niektórych starszych wersji za free w ramach swojej licencji ale sięga to do XE2 wstecz (jeśli chodzi o zakup obecnej pełnej wersji 10 XE) poniżej XE2 do BDS2006 mam dziurę i nie mam praw do pośrednich środowisk za to z kolei z uwagi na BDS2006 mam dostęp z tego co pamiętam do starszych delphi zdaje się do Delphi 5 A więc do bds2009 nie mam dostępu ok to kwestie prawne itp -------------------------------------------------------- inną całkiem kwestią jest (sam pomyśl kompilacja takich komponentów dla użytkowników wg potrzeb czyli tak jak oni mają środowiska... Gdzie ja bym to instalował ? Na maszynach wirtualnych to się ślimaczy jak nie wiadomo co, na swoim kompie gdzie pracuję no nie mógłbym instalować iluś środowisk wstecz bez jakiegoś przygotowania bo bym chyba kota dostał Aż się sam zastanawiam jak to robi np firma TMS Software ... tyle że tam pracuje KUPA ludzi. Co ciekawe jak pytałem ich o jakiś komponent do mojego starego BDS2006 to napisali mi, że niestety już tak starych środowisk nie supportują i tak to jest |
Autor: | misiulu [ 5 mar 2017, o 14:23 ] |
Tytuł: | Re: MkUsbDetector |
mirekk36 napisał(a): Aż się sam zastanawiam jak to robi np firma TMS Software ... tyle że tam pracuje KUPA ludzi. Co ciekawe jak pytałem ich o jakiś komponent do mojego starego BDS2006 to napisali mi, że niestety już tak starych środowisk nie supportują No właśnie też się zastanawiam np. TMSAsync dzisiaj pobrałem wersję 2.0 i dla mojego 2009 akurat było. Tak przy okazji to dobry komponent? Bo na razie też testuję wersję demo czyli z nag screen. Miałeś może do czynienia? Warto by było kupić pełną wersję? mirekk36 napisał(a): Ja mam dostęp do niektórych starszych wersji za free w ramach swojej licencji ale sięga to do XE2 wstecz (jeśli chodzi o zakup obecnej pełnej wersji 10 XE) poniżej XE2 do BDS2006 mam dziurę i nie mam praw do pośrednich środowisk za to z kolei z uwagi na BDS2006 mam dostęp z tego co pamiętam do starszych delphi zdaje się do Delphi 5 A więc do bds2009 nie mam dostępu No ja mam dostęp więc jak chcesz mogę Ci instalkę na serwerze do pobrania udostępnić Pytanie tylko czy po prostu nie ma do pobrania na oficjalnej stronie czy już licencja nowsza z 10.1 tego nie łapnie. mirekk36 napisał(a): inną całkiem kwestią jest (sam pomyśl kompilacja takich komponentów dla użytkowników wg potrzeb czyli tak jak oni mają środowiska... Gdzie ja bym to instalował ? Na maszynach wirtualnych to się ślimaczy jak nie wiadomo co, na swoim kompie gdzie pracuję no nie mógłbym instalować iluś środowisk wstecz bez jakiegoś przygotowania bo bym chyba kota dostał Kto co lubi ja najnowsze darmowe wersje właśnie zainstalowałem sobie na wirtualce i chodzi to całkiem nieźle. Zresztą używałbyś tylko tego powiedzmy w przypadku dostosowania komponentu do danej wersji. Także sporadycznie. Problem ten będzie narastał, szczególnie jak w przyszłości będziesz miał dostępnych więcej komponentów w sprzedaży. Ogólnie to jest pewien kompromis między potrzebami a tym co da się w rzeczywistości zrobić. W moim przypadku do zabawy w 10.1 i darmowej wersji komponentu to i może być z nag screen czyli teoretycznie nie muszę kupować pełnej wersji bo na dzień dzisiejszy demo wystarczy. Natomiast jak wspomniałem o tym programiku do backupów, miałbym już kogoś komu mógłbym to sprzedać, albo używać gdzieś u kogoś w działalności gospodarczej. Nie stać mnie na uaktualnienie do najnowszej wersji "borlanda" bo jest to dla mnie bardzo sporadyczny proceder Jednak chcąc nie chcąc nawet wersji demo komponentu nie mogę użyć do mojego środowiska i już NAPISANYCH w nim, działających aplikacji co jest dla mnie bardzo smutne bo napaliłem się obsługę USB i COM na całego Także może znajdzie się jakieś wyjście z sytuacji, mało uciążliwe, a dające możliwość użycia tego komponentu w innych wersjach środowiska. Liczę na to i sam jeszcze poszperam, może jakiś pomysł się rozwinie |
Autor: | kbudzen [ 24 mar 2017, o 23:42 ] |
Tytuł: | Re: MkUsbDetector |
Mirku proszę Cię o przygotowanie komponentu do Delphi 10.2. |
Autor: | mirekk36 [ 24 mar 2017, o 23:44 ] |
Tytuł: | Re: MkUsbDetector |
kbudzen napisał(a): Mirku proszę Cię o przygotowanie komponentu do Delphi 10.2. ale jajka .... no oczywiście że przygotuję - tylko poproszę o chwilkę czasu bo do wtorku nie ma mnie w Szczecinie, jestem na warsztatach w Katowicach |
Autor: | mirekk36 [ 28 mar 2017, o 22:42 ] |
Tytuł: | Re: MkUsbDetector |
Jakby coś to podpowiadam, że nie dość, że jest już do pobrania wersja komponentu pod TOKYO to na dodatek jest nowsza wersja 1.5 ... zapraszam do pobierania za free - wkrótce się przyda po kolejnym poradniku |
Autor: | kbudzen [ 29 mar 2017, o 07:36 ] |
Tytuł: | Re: MkUsbDetector |
Dzięki za informację |
Autor: | Maciek_L [ 29 mar 2017, o 20:18 ] |
Tytuł: | Re: MkUsbDetector |
mirekk36 napisał(a): na dodatek jest nowsza wersja Aktualizacja zrobiona Z niecierpliwością czekam na pokazanie przez Ciebie nowych funkcjonalności tego komponentu |
Autor: | misiulu [ 29 mar 2017, o 20:39 ] |
Tytuł: | Re: MkUsbDetector |
Tak z ciekawości tylko pytam czy dla starszych wersji z czasem będzie komponencik również dostępny? |
Autor: | mirekk36 [ 29 mar 2017, o 20:45 ] |
Tytuł: | Re: MkUsbDetector |
misiulu napisał(a): Tak z ciekawości tylko pytam czy dla starszych wersji z czasem będzie komponencik również dostępny? Oczywiście ale muszę do końca ogarnąć bieżący poradnik z działaniami na volumenach bo kilka BUGów mi wyszło przy okazji i muszę je ładnie wyeliminować (w zasadzie już wyeliminowane w wersji 1.5a) ... a później na spokojnie wygeneruję dla starszych delfiaków |
Autor: | misiulu [ 29 mar 2017, o 21:03 ] |
Tytuł: | Re: MkUsbDetector |
nie ma pośpiechu lepiej właśnie zrobić porządnie niż później tracić czas na kilkukrotne generowanie i poprawianie |
Strona 1 z 1 | Strefa czasowa: UTC + 1 |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |