-
11. Data: 2012-01-25 20:09:14
Temat: Re: [OT] Do tych co tu piszą w C++
Od: Sebastian Biały <h...@p...onet.pl>
On 2012-01-25 20:57, 4CX250 wrote:
>> Dłubiesz w C. Do C++ masz jeszcze kilka lat świetlnych. Jeśli dopiero
>> zaczynasz to to odpowiedni moment żeby *NIE* używać błędnych narzędzi
>> takich jak wybuchowa mieszanka C z WinAPI z powodu glupiej komunikacji z
>> COM.
> Zapewne masz rację i z czasem sam to pojmę. Piszę często na przykładach
> znalezionych w necie które dobieram je do własnych celów.
OK, nie neguję tego, ale wybierasz akurat jedno z najgorszych możliwych
rozwiązań. Cięzko mi to przez klawiaturę przechodzi, ale nawet Delphi
było by lepsze. COKOLWIEK co nie leży na poziomie WinAPI będzie lepsze.
> etapie jakim jestem liczy się że coś działa.
Nie zapominaj że ucząc się złych rozwiązań z czasem zaczniejsz je
powielać. A wymówka że na AVR też w C będziesz pisał jest tego
doskonałym przykładem.
> Zapewne takich jak ja są tysiące bo przecież od nich te przykłady i
> poradniki w necie ściągam.
Niestety musisz uważać, poradniki w sieci piszą te same tysiące którzy
miesiąc wcześniej się z nich uczyli. Rekurencja i głuchy telefon.
-
12. Data: 2012-01-25 20:23:09
Temat: Re: Do tych co tu piszą w C++
Od: Waldemar Krzok <w...@z...fu-berlin.de>
Sebastian Biały wrote:
>> Nie. Mój rozum zbankrutuje jak tak zacznę szaleć :)
>
> Używasz języka C (bo to nie C++) a więc czegoś z lat 80 w środowisku
> WinAPI które pochodzi koncepcyjnie z grubsza rzecz biorąc tamtego czasu.
> Do dnia dzisiejszego inżynieria dorobiła się *znacznie* wygodniejszych
> narzędzi. Zwróć się w kierunku C#/Java. To języki o identycznej składni
> z dokładnością do dupereli a *automatycznie* pozwolą na wykorzystanie
> choćby technik zdarzeniowych które rozwiążą Ci wszelakie problemy na tym
> etapie na którym jesteś zamiast rękodzieła w jednym z najmniej wygodnych
> API jakie istnieją.
>
>> I tak już mi się
>> bardziej nie chce niż chce tego języka się uczyć.
>
> C to fatalny wybór jeśli chcesz pisać GUI. FA-TAL-NY.
>
>> Jako że na AVRy się przesiadłem to i zacząłem w
>> C++ coś dłubać.
>
> Dłubiesz w C. Do C++ masz jeszcze kilka lat świetlnych. Jeśli dopiero
> zaczynasz to to odpowiedni moment żeby *NIE* używać błędnych narzędzi
> takich jak wybuchowa mieszanka C z WinAPI z powodu glupiej komunikacji z
> COM.
Ach, nie przesadzaj. Da się też. Ale masz rację, że są wygodniejsze metody.
Waldek
--
My jsme Borgové. Sklopte štíty a vzdejte se. Odpor je marný.
-
13. Data: 2012-01-25 21:04:40
Temat: Re: Do tych co tu piszą w C++
Od: Sebastian Biały <h...@p...onet.pl>
On 2012-01-25 21:23, Waldemar Krzok wrote:
> Ach, nie przesadzaj. Da się też.
To jest *bardzo* słaby argument za tym aby jednak próbować dłubać GUI w
C i WinAPI.
-
14. Data: 2012-01-25 21:13:10
Temat: Re: Do tych co tu piszą w C++
Od: Michoo <m...@v...pl>
W dniu 25.01.2012 17:10, Sebastian Biały pisze:
> Zmień język na C++ + Qt lub zainteresuj się może C# który załatwi
> problemy z WinAPi za sensownym interfejsem. Do wyboru masz jeszcze Jave.
Co do Qt to jako, że niedawno w ramach zaliczenia z kolegą popełniliśmy
aplikację rozmawiającą po serialu z FPGA, to załączam link do screena
aplikacji i całego kodu przez nas napisanego ;)
http://grota.be/~michoo/smieci/pwmserial.png
Użyta biblioteka to http://code.google.com/p/qextserialport/
--
Pozdrawiam
Michoo
-
15. Data: 2012-01-26 07:09:33
Temat: Re: Do tych co tu piszą w C++
Od: Zbych <a...@o...pl>
W dniu 2012-01-25 22:13, Michoo pisze:
> W dniu 25.01.2012 17:10, Sebastian Biały pisze:
>> Zmień język na C++ + Qt lub zainteresuj się może C# który załatwi
>> problemy z WinAPi za sensownym interfejsem. Do wyboru masz jeszcze Jave.
> Co do Qt to jako, że niedawno w ramach zaliczenia z kolegą popełniliśmy
> aplikację rozmawiającą po serialu z FPGA, to załączam link do screena
> aplikacji i całego kodu przez nas napisanego ;)
> http://grota.be/~michoo/smieci/pwmserial.png
Pokazałeś fragment z _wysyłaniem_ danych, który pod gołym winapi/posixem
wyglądałby równie skompilowanie.
-
16. Data: 2012-01-26 09:31:29
Temat: Re: Do tych co tu piszą w C++
Od: a...@p...fm
Venioo- jaki MS - Visual ??? Duzo lepsze jest QT Nokia i do tego
free. SUPER !
polecam http://qt.nokia.com/
-
17. Data: 2012-01-26 18:25:55
Temat: Re: Do tych co tu piszą w C++
Od: Robert Zemła <m...@g...com>
W dniu 25-01-2012 14:15, 4CX250 pisze:
> W C++ piszę taki mały programik do odczytywania pomiarów z miernika RLC.
>
> Wszystko w WinApi.
>
> Najpierw muszę to urządzenie zainicjować i robię to tak:
>
> strcpy ( Buffer_write, "//\x1B""2\x0A" ); // polecenie ESC2 - przejście
> urządzenia w tryb REMOTE
> WriteFile( hPort, Buffer_write, strlen ( Buffer_write ), &ile, 0 );
>
> strcpy ( Buffer_write, "*CLS;ese 255\x0A" ); // Wyzerowanie urządzenia
> WriteFile ( hPort, Buffer_write, strlen ( Buffer_write ), &ile, 0 );
>
> Następnie chcę sprawdzić czy komunikacja z urządzeniem jest prawidłowa.
> Robię to pytaniem o identyfikator urządzenia.
>
> strcpy ( Buffer_write, "*idn?\x0A" ); // Niech się urządzenie teraz
> przedstawi
> WriteFile ( hPort, Buffer_write, strlen ( Buffer_write ), &ile, 0 );
>
>
> W następnej części programu mam problem. Nie bardzo wiem, co zrobić aby
> program odczekał skutecznie tylko tyle czasu ile jest niezbędne, aż w
> buforze odbiorczym COM pojawią się wszystkie dane wysłane przez urządzenie.
>
> Narazie robię to w bardzo nieelegancki sposób za pomocą opóźnienia
>
> Sleep (1000);
>
> Jest coś skuteczniejszego?
>
> Dalej w programie jest tak.
> Po odczekaniu 1000ms program przystępuje do odczytania bufora.
> Najpierw sprawdzam ile jest znaków w buforze COM do odczytania
>
> Result = ClearCommError( hPort, &Errors, &ComStatus );
> Buffer_lenght = ComStatus.cbInQue; // Sprawdzenie ile bajtów oczekuje w
> buforze wejściowym COM
>
> Następnie czyszczę bufor odbiorczy ale nie wiem czy to jest właściwy
> sposób.
> Gdy tego nie robiłem to były w nuforze śmieci z poprzednich odczytów
>
> strcpy(Buffer_read, " "); // Wyzerowanie bufora odbiorczego
>
> Ostatecznie odczutuję zawartośc bufora
>
> Result = ReadFile( hPort, Buffer_read, Buffer_lenght, &ile, NULL );
>
> Wynik trafia do okienka na ekranie
>
> SetWindowText( g_hText1, Buffer_read );
>
> Pominąłem polecenia if oraz while które pilnują aby nie próbować czekać
> w nieskończoność aż coś się pojawi w buforze.
> W analogiczny sposób odpytuję urządzenie o wyniki konkretnych pomiarów
> wartości RLC i tam też mam taki sam problem.
>
>
> Marek
Żeby było elegancko powinieneś powołać osobny wątek do samej komunikacji
z COM'em a do synchronizacji z GUI powinieneś użyć zdarzeń. Co do samej
obsługi COM'a, powinieneś ustawić jeszcze time'outy. Przy okazji
poczytaj o trybie overlapped i sam zdecyduj co ma największy sens w
Twojej aplikacji.
-
18. Data: 2012-01-26 18:45:55
Temat: Re: [OT] Do tych co tu piszą w C++
Od: Robert Zemła <m...@g...com>
W dniu 25-01-2012 21:09, Sebastian Biały pisze:
> On 2012-01-25 20:57, 4CX250 wrote:
>>> Dłubiesz w C. Do C++ masz jeszcze kilka lat świetlnych. Jeśli dopiero
>>> zaczynasz to to odpowiedni moment żeby *NIE* używać błędnych narzędzi
>>> takich jak wybuchowa mieszanka C z WinAPI z powodu glupiej komunikacji z
>>> COM.
>
>> Zapewne masz rację i z czasem sam to pojmę. Piszę często na przykładach
>> znalezionych w necie które dobieram je do własnych celów.
>
> OK, nie neguję tego, ale wybierasz akurat jedno z najgorszych możliwych
> rozwiązań. Cięzko mi to przez klawiaturę przechodzi, ale nawet Delphi
> było by lepsze. COKOLWIEK co nie leży na poziomie WinAPI będzie lepsze.
>
>> etapie jakim jestem liczy się że coś działa.
>
> Nie zapominaj że ucząc się złych rozwiązań z czasem zaczniejsz je
> powielać. A wymówka że na AVR też w C będziesz pisał jest tego
> doskonałym przykładem.
>
>> Zapewne takich jak ja są tysiące bo przecież od nich te przykłady i
>> poradniki w necie ściągam.
>
> Niestety musisz uważać, poradniki w sieci piszą te same tysiące którzy
> miesiąc wcześniej się z nich uczyli. Rekurencja i głuchy telefon.
Wybacz ale nie bardzo rozumiem Twojej niechęci do WinAPI. Jego idea i
sens żyje tak długo jak istnieją Windowsy - od czasów kiedy ówczesne
maszyny potrafiły niewiele więcej "uciągnąć" niż Windows i trochę GUI.
Owszem masz 100% racji że dzisiaj istnieją o wiele wygodniejsze sposoby
ale to wszystko to tylko kolejna warstwa, natomiast wiedza z zakresu
"jak to faktycznie działa" naprawdę potrafi się mocno przydać.
-
19. Data: 2012-01-26 19:27:03
Temat: Re: [OT] Do tych co tu piszą w C++
Od: Sebastian Biały <h...@p...onet.pl>
On 2012-01-26 19:45, Robert Zemła wrote:
> Wybacz ale nie bardzo rozumiem Twojej niechęci do WinAPI.
Znasz cos poza nim? Qt? .NET? JRE? Bo ja znam.
> Jego idea i
> sens żyje tak długo jak istnieją Windowsy - od czasów kiedy ówczesne
> maszyny potrafiły niewiele więcej "uciągnąć" niż Windows i trochę GUI.
Naprawdę chcesz z tego wyciągnąć tezę że to co było dobre w czasach 386
dzisiaj jest również doskonałe?
> Owszem masz 100% racji że dzisiaj istnieją o wiele wygodniejsze sposoby
> ale to wszystko to tylko kolejna warstwa, natomiast wiedza z zakresu
> "jak to faktycznie działa" naprawdę potrafi się mocno przydać.
Nie. Naprawdę, nie interesuje Cie ile bajtów ma DWORD, dlaczego istnieje
różnica między unicodem a char i dlaczego notacja węgierska jest do
bani. Zacznij uzywać środowisk *obiektowych* a zobaczysz gdzie jest
miejsce WinAPI. Programowanie *dzisiaj* w tym cudzie z lat 80 wymaga
*naprawdę* solidnej wymówki. Przedstaw ją w kontekście tego wątku.
-
20. Data: 2012-01-26 20:29:22
Temat: Re: Do tych co tu piszą w C++
Od: "Grzegorz Niemirowski" <g...@p...onet.pl>
a...@p...fm <a...@p...fm> napisał(a):
> Venioo- jaki MS - Visual ??? Duzo lepsze jest QT Nokia i do tego
> free. SUPER !
> polecam http://qt.nokia.com/
Tak jakby Visual nie był i nie można było pisać w QT pod Visualem.
--
Grzegorz Niemirowski
http://www.grzegorz.net/
OE PowerTool i Outlook Express: http://www.grzegorz.net/oe/
Uptime: 1 day, 18 hours, 13 minutes and 37 seconds