PDAclub.pl - Forum użytkowników technologii mobilnych
Windows Mobile (Classic, Professional, Standard), Windows Phone 6.x oraz 7/8.x/10 => Oprogramowanie PPC => Dla programistów => Wątek zaczęty przez: Gaara w Październik 13, 2007, 16:33:08
-
Chciałbym tworzyć programy na mojego HTC Wizarda zaopatrzyłem się w program Microsoft Visual Studio Professional 2005 i przy Tworzeniu projektu do win32 są takie opcje jak:
ALT Smart Device Project
MFC Smart Device Application
Win32 Smart Device Projekt
Win32 Console Application
Win32 Project
Która opcje powinienem wybrać do stworzenia aplikacji na mojego wizadra?
-
1. Nie masz SDK
2. Nie wiemy pod jaki system
3 Nie prościej użyć Mocrosoft Embded Visual C++?
-
http://www.microsoft.com/downloads/details.aspx?familyid=06111a3a-a651-4745-88ef-3d48091a390b&displaylang=en (http://www.microsoft.com/downloads/details.aspx?familyid=06111a3a-a651-4745-88ef-3d48091a390b&displaylang=en)
-
Z tego co mi się wydaje i jest potwierdzone przez google, to projekty:
"ALT Smart Device Project
MFC Smart Device Application
Win32 Smart Device Projekt"
są dla WinCE/WM.
Z tego co czytam standardowo powinien być WM2003 SDK, jednak w większości przypadków powinien on wystarczyć, co więcej zapewnia on kompatybilność ze starszymi urządzeniami.
-
Standardowo VS2005 powinien bez problemu dać ci możliwość pisania na mobilne okienka. Z tego co wiem standardowo chyba nie ma sdk pod WM5 ale można go sciągnąć - nie jest duży. Poza tym bez problemu można pisać program dla WM2003. Wszystkie projekty dla "smart devices" tworzą kod pod mobilne okienka. Różnice są tylko w tym jakie biblioteki ci projekt dołoży. Masz do wyboru MFC albo ATL. Możesz też pisać w gołym API Windowsowym "Win32 Smart Devices Project". Wszystkie dają w wyniku aplikację w kodzie natywnym. Oprócz tego masz jeszcze C# ale ja się tym nie bawię i się nie znam za bardzo. A i filozofia .NET jakoś mi się kłóci z ideą urządzenia przenośnego. W każdym razie wybór jest duży.
-
To może polecicie mi co będzie najlepsze, znam sie trochę (pisze programy na kompie) w c++ i chciałbym zacząć pisać programy na mojego palma HTC wizard z systemem Windows mobile 5. Co mi będzie do tego potrzebne? Gdy próbowałem odpalić program zrobiony w Visual Studio 2005 na palmie pokazał mi sie komunikat ze mam za stare .Net Framework Compact. Ściągnąłem najnowsze ze stronki Microsoftu odpaliłem ale żadnego odzwierciedlenia na palmie.. Odpalałem to na kompie i próbowałem też na palmie ale ppc nie łykną instalatora *.msi więc nie wiem co mam zrobić.
Palma mam dopiero miesiąc więc proszę o wyrozumiałość jeśli się gdzieś wygłupiłem ;)
-
Palma
:] :S :| :-? :worried: :shock:
-
używając tego słowa chodzi mi o mój PDA HTC Wizard przepraszam jeśli źle się wyrażam
-
(nie obraź się) nie wiem dlaczego każdy wizardowiec myśli że ma palma. Ma pocketa.
W c++ ściągnij sobie Microsoft Embded Visual C++ (ms eVC) 4 sp4? (albo 3, nie pamiętam) i sdk dla wm2003 lub wm5.0, jak wolisz
-
dzięki za odpowiedź i tak jak napisałeś, znalazłem na forum właśnie parę określeń Wizarda jaka palma stąd to samo u mnie teraz przynajmniej mnie ktoś wyprowadził z błędu :) no to zabieram sie za ściąganie tych programów i programowanie, dzięki jeszcze raz. Mógłbyś jeszcze krótko napisać co to i do czego jest potrzebne te sdk?
-
Sdk = software development kit (bodaj) czyli zestaw czego to tam nie potrzeba aby programować dla danego systemu. Domyślnie eVC ma tylko dla WinCE .net 4.2 czyli nieprzydatne.
-
Czy te sdk muszę zainstalować do jakiejś specjalnej lokalizacji? Bo po zainstalowaniu programu, service packa i sdk w standardowych folderach instalatora w Embedded Visual C++ w oknie nowy projekt nie mam nic związanego z windows mobile 5.0 (załączyłem screena)
-
coś jest źle... powinieneś mieć listę wuboru cpu w tym wolnym miejscu pod przyciskami
wszystkie SP do evc zainstalowane?
-
Instalowałem tylko service pack 4, rozumiem ze mam ściągnąć również wcześniejsze i zainstalować?
-
"WCE" = Windows CE, więc tak skompilowane programy będą w większości działać na WM. Ja jednak obstawiam, że zainstalowany przez ciebie WM5 SDK jest po prostu nie dla tej wersji eVC, dlatego masz etylko standardowo WinCE SDK (chociaż po dłuższym przemyśleniu to z tą niekompatybilnością był problem chyba tylko przy eVC3... albo i nie :P Nie wnikam).
PS. Pytanie profilaktyczne (mam nadzieję, że się nie obrazisz :) ). Wiesz co to... zmienna? :wink:
EDIT. Czyżbyś instalował te SDK http://www.microsoft.com/downloads/details.aspx?familyid=06111a3a-a651-4745-88ef-3d48091a390b&displaylang=en ? Jeżeli tak, to z tego co czytam nie podpasi ono dla eVC ani VS2003, tylko VS2005. Zainstaluj lepiej to WM2003 SDK: http://www.microsoft.com/downloads/details.aspx?FamilyId=9996B314-0364-4623-9EDE-0B5FBB133652&displaylang=en
-
Dzięki, i tak wiem co to zmienna :P pisałem programy konsolowe w c++ 'trochę' bardziej rozbudowane niż Hello World (programowanie obiektowe) teraz się uczę tworzenia windowsowych programów w builderze ale z programowania na pockety jestem zielony.
-
Dzięki, i tak wiem co to zmienna :P pisałem programy konsolowe w c++ 'trochę' bardziej rozbudowane niż Hello World (programowanie obiektowe) teraz się uczę tworzenia windowsowych programów w builderze ale z programowania na pockety jestem zielony.
Ok, ok, spoko ;) Sam nie jestem jakiś super programistą i nie mam jakiś wielkich kompetencji aby oceniać (edit: tak, to będzie lepsze słowo) innych, jednak gdy Skerdej zabierał się do pisania komercyjnych programów nie znając nawet elementarnych podstaw programowania (choćby te zmienne) to się "lekko" zdziwiłem :O
Ale wracając do tematu to jak mówiłem, zainstaluj WM2003 SDK z linku z mojego powyższego posta i wszystko powinno być ok (oczywiście, jeżeli masz SP4 w swoim eVC4). Do tego w każdym SDK od MS masz dostępnych wieeele przykładowych programów, a że mobile WinAPI jest nawet podobne do "dużego" WinAPI to nauka nie powinna przysporzyć ci większych problemów. Powodzenia :)
-
Chciałbym tworzyć programy na mojego HTC Wizarda zaopatrzyłem się w program Microsoft Visual Studio Professional 2005 i przy Tworzeniu projektu do win32 są takie opcje jak:
ALT Smart Device Project
MFC Smart Device Application
Win32 Smart Device Projekt
Win32 Console Application
Win32 Project
Która opcje powinienem wybrać do stworzenia aplikacji na mojego wizadra?
Niestety w tym watku nikt ci raczej nie odpowiedzial.
Moze ja sprobuje:
Win32 Project - Nie wiem co to jest czy przypadkiem nie jest to projekt pod duze windy?
Win32 Console Application - aplikacja typu "dosowego" czyli bez okienek odpalana w czyms w stylu cmd. Jesli masz zamiar pisac jaks usluge bez HMI to wybierz to.
Pozostale projekty roznia sie zsatosowanymi bibliotekami:
Win32 Smart Device Projekt - natywny kod bez zadnych bibliotek - ciezko cos zrobic bo w zasadzie wszystko musisz pisac sam ...
ALT Smart Device Project - Active Template Library - piszesz obiekty typu COM - raczej do pisania ActivX'owych elementow. Programy sa w miare lekkie,
MFC Smart Device Application - Microsoft Foundation Classes - typowe biblioteki MS do interfejsu graficznego. stara i dosc dobrze udokumentowana. programy sa niestety wieksze.
To w czym bedziesz pisal zalezy od ciebie.
Coraz popularniejszy jest C#. w VS2005 calkiem ladnie sie pisze chociaz sa bledy w dokumentacji. W MSDEV pisza ze jest cos dostepne ale Compiler o tym nie wie. no i kicha.
VS2005 ma troche problemow z funkcjami new i delete. przy czestej alokacji nieparzystej liczbiy bajtow czasami sie myli z indeksami przy dealokacji. probuje zdealokowac parzysta liczbe bajtow i wchodzi w obszar zabroniony i exception :(.
Nie wiem czy pomoglem, ale odpowiedzialem.
Inna sprawa jest to ze VS2005 profesjonal troche kosztuje a eVC++ jest za friko, obsluguje wieksza liczbe procesorow (np MIPS i SHx) i jest pozbawione chorob wieku dzieciecego (po zainstalowaniuj SP).
Pozdrawiam i zycze powodzenia
-
Niestety w tym watku nikt ci raczej nie odpowiedzial.
Uhm?? Było pytanie "Która opcje powinienem wybrać do stworzenia aplikacji na mojego wizadra?" - odpowiedziałem. Ok. Potem Deyot odpisuje niemal to samo co ja (ok, dodał czym one się różnią), Ok. Ale, że przychodzisz ty i piszesz, że nikt niestety nie pomógł to już jakaś paranoja :O :D
Czy ktokolwiek czytał cały ten wątek, czy tylko tytuł + pierwszy i ostatni post?
-
obsluguje wieksza liczbe procesorow (np MIPS i SHx)
To, jakie procki obsługuje zależy od SDK. Jak myślisz co było zanim powstało eVC a palmtopy MS miały tylko procki SH3 i MIPS (czasy WinCE 1.x-2.1x)?
-
Kajetan:
"To, jakie procki obsługuje zależy od SDK.... "
No wlasnie nie ma wsparcia dla SH4 czy SH5.
"Jak myślisz co było zanim powstało eVC a palmtopy MS miały tylko procki SH3 i MIPS (czasy WinCE 1.x-2.1x)?"
to akurat wiem bo uzywalem Windows CE Toolkit for Visual C++ 6.0 z odpowiednimi SDK (np HPC SDK v2.0).
Poklik:
Sorry ale jak ktos pisze tylko to co widac przy wyborze typu projektu to nie jest pomoc.
To tak jakby ktos na skrzyzowaniu pytal sie jak dojechac do kina, a ty bys mu odpowiedzial ze moze wybrac skret w lewo, jazde prosto albo sktret w prawo. i szczesliwy poszedl dalej. Odpowiedziec odpowiedziales ale ze to nie rozwiazuje problemu. niewazne. odpowiedz byla. Deyot napisal juz cos konkretniej. ale z tego wynikalo ze: jedz gdzie chcesz napewno dojedziesz....
Moja odpowiedz tez nie rozwiazuje sprawy ale podaje juz jakies informacje o drodze.
a jesli kolega pisze applikacje widowe w builderze to latwiej mu bedzie z C#. Pozatym MS daje mozliwosc import export UML'u do C#. chociazby przy pomocy Visio. C++ daje za duzo swobody i w MS pisze ze pracuje nad tym ale .....
Ja osobiscie mam mala praktyke z Okienkami. bardziej pracuje na poziomie jadra i uslug. A to dla MS to raczej samo C ktore opakowywujemy w C++.
Pozdrawiam.
-
Pytanie dokładnie brzmiało: "Która opcje powinienem wybrać do stworzenia aplikacji na mojego wizadra?" czyli jeżeli piszesz, że "Niestety w tym watku nikt ci raczej nie odpowiedzial." oznacza, że przynajmniej w jedynej opcji którą podałem ja i Deyot nie da się stworzyć programu dla WM??
A jeżeli tak lubisz porównywać to Garra pytał jak dojechać do kina i podałem mu wszystkie dostępne drogi. Oczywiście mogłem mu podać jakąkolwiek pojedyńczą drogę, jednak jak pytanie nie było aż tak precyzyjne i co więcej nie miałem się czym kierować w podaniu jednej konkretnej drogi to takiej nie podałem. Ty je dokładnie opisałeś i to się ceni.
Jednak nie o żadne drogi mi tu chodzi tylko o te jedno jedyne zdanie:
"Niestety w tym watku nikt ci raczej nie odpowiedzial." gdzie były już dwie odpowiedzi...
PS. Tak, a teraz znowu czekam na kolejny wywód jacy my jesteśmy niepomocni, niedokładni, głupi...
EDIT:
Tak z ciekawości: to czy wsparcie dla Mips/SHx/x86 zależy od SDK, czy może samego kompilatora?
-
Co do wsparcia procków to obstawiam SDK:
1) SDK - bo musi mieć np. prekompilowane biblioteki na dany typ proca
2) Kompilator - jest najczęsciej integralną częścią SDK ;) przynajmniej jeśli chodzi o SDK z MS :P
VS/eVS jest tylko IDE, niczym więcej...
-
Dziękuje wszystkim za bardzo wyczerpujące odpowiedzi :) jesteście wielcy, mam jeszcze jedno pytanko, czy jest możliwe "przetłumaczenie" programu napisanego w builderze c++? Czyli np pozmienianie tylko paru linijek kodu czy to wymaga już zmiany składni/funkcji?
-
Dziękuje wszystkim za bardzo wyczerpujące odpowiedzi :) jesteście wielcy, mam jeszcze jedno pytanko, czy jest możliwe "przetłumaczenie" programu napisanego w builderze c++? Czyli np pozmienianie tylko paru linijek kodu czy to wymaga już zmiany składni/funkcji?
Jeśli klasy są dobrze porobione, to można przenieść i podłączyć pod jakąś bibliotekę dla pocketa, ale niestety i tak i tak łatwo nie pójdzie. Bo pewnie jak pisałeś w builderze to korzystałeś z biblioteki VLC. Wszystko zależy jak mocno oddzieliłeś Viewera od Controlera.
-
Czy taki sam problem będzie z konsolowymi programami pisanymi w c++?
-
Konsola? na PPC niet, PPC nie ma konsoli. WinCE ma ale PPC nie. Owszem można zainstalować konsolę z CE na PPC ale chodzi to kulawo a na dodatek musisz się posługiwać paskami przewijania...
-
WinCE ma ale PPC nie.
Ma i chodzi tak samo jak na WCE :D
Owszem można zainstalować konsolę z CE na PPC
Po co? Jest przecież wersja dla PPC ;)
ale chodzi to kulawo a na dodatek musisz się posługiwać paskami przewijania...
Kulawo? Nie zauważyłem. Co do przycisków przewijania to już wszystko tu zależy od programisty czy paski bedą czy nie.
Jednak nie wiem, czy taki eVC/VS ma możliwość pisania bezpodśrednio pod konsolę, musisz chyba ściągnąć wcześniej SDK do niej. Natomiast kompilator PGCC on-board (czyli taki, z którego kompilujesz bezpośrednio na PPC) od Mamaicha ma już to SDK wbudowane, więc do prostych programów konsolowych jest naprawdę dobry. Oto link do niego http://mamaich.uni.cc/fr_pocket.htm
Natomiast konsolę (i SDK do niej) możesz ściągnąć stąd: http://www.symbolictools.de/public/pocketconsole
-
Poklik - ta konsola "pod PPC" to tak naprawdę najzwyklejsza konsola pod CE. Dodatkowo nie ma jej domyślnie w systemie :P
-
Kitor: ja wiem, że ty bardzo lubisz WinCE, jednak gdy to przeradza się w manię wtedy robi się to niebezpieczne :evil:
Ja też mogę powiedzieć, że ta konsola "pod WinCE" to najzwyklejsza konsola pod PPC, bo z tego co widzę to ona pierwsza zawitała na PPC (nie widzę, aby była ona w starszych handheldach z WinCE 2/3, natomiast na PPC2002 już była), a nie WinCE :D Dodatkowo nie ma jej domyślnie w systemie WinCE. ;)
-
Poklik ma w pelni racje.
Pod PPC jest standardowo najzwyklejsza konsola.
Tylko nie mylic konsoli PPC z konsola windowsowa (typu cmd, czy command.com). Konsola PPC sluzy do uruchamiania programow bezokienkowych.
A to czy beda paski przewijania czy nie to tak jak poklik napisal zalezy od programisty i tego ile program wyrzuca na konsole.
Pod VS jest mozliwosc pisanie pod konsole.
Przy wyborze nowego projektu wybierasz:
smartdevice nastepnie w Project settings: Application Type ustawiasz na Console application.
I juz masz projekt bez okienek.
PS.
Poklik: sorry ze nie moglem wczesniej odpisac ale podrozowalem bez netu i dopiero teraz moge.
a na twoje pytanie odpowiedzial ci dokladnie Sejnuro.
Na post nie bede odpowiadal bo nic nie wniesie do dyskusji poza psuciem krwi. Po co sie klucic jak mozna poprostu odpowiadac na pytania.
Pozdrawiam