MFC: Windows CE compatible

Podobné dokumenty
GUIDELINES FOR CONNECTION TO FTP SERVER TO TRANSFER PRINTING DATA

Operační systémy 2 Základy Windows API

IUJCE Přednáška č. 11. další prvky globální proměnné, řízení viditelnosti proměnných, funkcí

David Bednárek Jakub Yaghob Filip Zavoral.

User manual SŘHV Online WEB interface for CUSTOMERS June 2017 version 14 VÍTKOVICE STEEL, a.s. vitkovicesteel.com

Postup objednávky Microsoft Action Pack Subscription

Příručka aplikace KNetWalk. Fela Winkelmolen Eugene Trounev

int => unsigned int => long => unsigned long => float => double => long double - tj. bude-li:

UŽIVATELSKÁ PŘÍRUČKA

Introduction to MS Dynamics NAV

Preprocesor. Karel Richta a kol. katedra počítačů FEL ČVUT v Praze. Karel Richta, Martin Hořeňovský, Aleš Hrabalík, 2016

Arduino Data Logger Shield

Software Operaèní systém autorské dílo licenci multilicenci Aplikaèní software Komerèní programy upgrade OEM software Demoverze a zku ební verze

Software Operaèní systém autorské dílo licenci multilicenci Aplikaèní software Komerèní programy upgrade OEM software Demoverze a zku ební verze

Software Operaèní systém autorské dílo licenci multilicenci Aplikaèní software Komerèní programy upgrade OEM software Demoverze a zku ební verze

IUJCE 07/08 Přednáška č. 1

Čtečka otisků prstů 1. POPIS 2. SPECIFIKACE. ECLIPSERA s.r.o. Distributor pro ČR. VÝROBNÍ ČÍSLO

Arduino Ethernet Shield W5100 R3

Instalace Pokyny pro instalaci v operačním systému Windows XP / Vista / Win7 / Win8

Jak importovat profily do Cura (Windows a

Abstraktní třídy, polymorfní struktury

Byznys a obchodní záležitosti

PREPROCESOR POKRAČOVÁNÍ

<surface name="pozadi" file="obrazky/pozadi/pozadi.png"/> ****************************************************************************

Uživatelská příručka. Xperia P TV Dock DK21

PB071 Programování v jazyce C

Střední průmyslová škola strojnická Olomouc, tř.17. listopadu 49

Příručka aplikace Kollision. Paolo Capriotti

Statické proměnné a metody. Tomáš Pitner, upravil Marek Šabo

Škola: Střední škola obchodní, České Budějovice, Husova 9. Inovace a zkvalitnění výuky prostřednictvím ICT

Users manual for IMCF BIOCEV booking system new planning board

Microsoft Lync WEB meeting

Jazyk C++ I. Šablony

Příručka aplikace KMix. Gaurav Chaturvedi Vývojář: Christian Esken Vývojář: Helio Chissini de Castro Vývojář: Brian Hanson

Čipové karty Lekařská informatika

TIA Portal Openness Generování projektu.

Tento materiál byl vytvořen v rámci projektu Operačního programu Vzdělávání pro konkurenceschopnost.

Příklad aplikace Klient/Server s Boss/Worker modelem (informativní)

PB161 Programování v jazyce C++ Přednáška 10

2. Entity, Architecture, Process

Vánoční sety Christmas sets

Programování v C++ 1, 1. cvičení

Úvod do datového a procesního modelování pomocí CASE Erwin a BPwin

Projekt: ŠKOLA RADOSTI, ŠKOLA KVALITY Registrační číslo projektu: CZ.1.07/1.4.00/ EU PENÍZE ŠKOLÁM

Algoritmizace a programování

POPIS TUN TAP. Vysvetlivky: Modre - překlad Cervene - nejasnosti Zelene -poznamky. (Chci si ujasnit o kterem bloku z toho schematu se mluvi.

Lukáš Kubis. MSP pro VŠB-TU Ostrava

David Bednárek Jakub Yaghob Filip Zavoral.

Škola: Střední škola obchodní, České Budějovice, Husova 9. Inovace a zkvalitnění výuky prostřednictvím ICT

1, Žáci dostanou 5 klíčových slov a snaží se na jejich základě odhadnout, o čem bude následující cvičení.

Jazyk C++ I. Šablony 2

Výukový materiál zpracovaný v rámci operačního programu Vzdělávání pro konkurenceschopnost

Definice třídy. úplná definice. public veřejná třída abstract nesmí být vytvářeny instance final nelze vytvářet potomky

Ransomware, včera dnes a zítra. Igor Hák ESET software spol. s r.o.

Programování v Javě I. Únor 2009

LED STANDARD 12V GU4, GU5.3, G53

WL-5480USB. Quick Setup Guide

Systém fasádní - Konstrukce VF50 a VF50RR. Hueck Hartmann

Psaná podoba jazyka, slovní zásoba

Apache Cordova (PhoneGap 3)

Anotace Mgr. Filip Soviš (Autor) Angličtina, čeština Speciální vzdělávací potřeby - žádné -

Enterprise Java (BI-EJA) Technologie programování v jazyku Java (X36TJV)

Tabulka 1 Stav členské základny SK Praga Vysočany k roku 2015 Tabulka 2 Výše členských příspěvků v SK Praga Vysočany Tabulka 3 Přehled finanční

Výukový materiál zpracovaný v rámci operačního programu Vzdělávání pro konkurenceschopnost

Programování v Javě I. Leden 2008

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

USER'S MANUAL FAN MOTOR DRIVER FMD-02

Příručka aplikace Shisen-Sho. Dirk Doerflinger Eugene Trounev Frederik Schwarzer Kontrolor: Frerich Raabe

Invitation to ON-ARRIVAL TRAINING COURSE for EVS volunteers

Preprocesor a koncepce (větších) programů. Úvod do programování 2 Tomáš Kühr

Gaurav Chaturvedi Překlad: Jan Bělohoubek

EURO přeshraniční platba

ČÁST 1. Základy 32bitového programování ve Windows

PART 2 - SPECIAL WHOLESALE OFFER OF PLANTS SPRING 2016 NEWS MAY 2016 SUCCULENT SPECIAL WHOLESALE ASSORTMENT

Jméno autora: Mgr. Alena Chrastinová Datum vytvoření: 2O Číslo DUMu: VY_32_INOVACE_O9_AJ

PRAVIDLA ZPRACOVÁNÍ STANDARDNÍCH ELEKTRONICKÝCH ZAHRANIČNÍCH PLATEBNÍCH PŘÍKAZŮ STANDARD ELECTRONIC FOREIGN PAYMENT ORDERS PROCESSING RULES

Jméno autora: Mgr. Alena Chrastinová Datum vytvoření: Číslo DUMu: VY_32_INOVACE_O7_AJ

Hi-Res Audio/DNC Headset MDR-NC750

Novinky v IBM Notes a Domino. CubeTeam Dan Vrána

Tento materiál byl vytvořen v rámci projektu Operačního programu Vzdělávání pro konkurenceschopnost.

Theme 6. Money Grammar: word order; questions

Pokročilé programování v jazyce C pro chemiky (C3220) Operátory new a delete, virtuální metody

USING VIDEO IN PRE-SET AND IN-SET TEACHER TRAINING

Programování v C++ 1, 17. cvičení

Aktivita CLIL Chemie I.

Programování v jazyce C pro chemiky (C2160) 10. Grafická knihovna g2

Zubní pasty v pozměněném složení a novém designu

Programovací jazyk C(++) C++ area->vm_mm->locked_vm -= len >> PAGE_SHIFT;

Programovací jazyk C++ Hodina 1

Martin Heni Eugene Trounev Kontrolor: Mike McBride

Vondřich I.: Potlačení ekzému kortikoidní terapií (KAZUISTIKA 4/2010)

Sociální sítě jako Velký bratr. Martin Klubal AEC a.s.

Téma 8. Náklady kapitálu. Kapitálová struktura a její optimalizace

public static void main(string[] args) { System.out.println(new Main().getClass().getAnnotation(Greet.class).text());

IPA - Lab.1 Úvod do programování v ASM

8. lekce Úvod do jazyka C 3. část Základní příkazy jazyka C Miroslav Jílek

C++ 0x aka C++11. Základním kamenem je třída std::thread

ADT/ADS = abstraktní datové typy / struktury

Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace

Transkript:

MFC: Windows CE compatible strcpy_s WinCE: vyzaduje další parametr - velikost strcpy_s(char * _Dst, rsize_t _DstSize, const char * _Src); 1. přidat parametr velikost kompatibilní i s win xp 2. náhradit pomocí strcpy, který velikost nevyzaduje CreateWaitableTimer 1. Sleep() 2. Vlastní thread s event a sleep _T() WinCE: je čistě Unicode makro _T() je definovano jako #define T(x) L ## x (#define TEXT(x) L ## x) (#define _T(x) TEXT(x)) 1. Makro TEXT(x) ale již zřejmně definováno je. Stači tedy vložit #define _T(x) TEXT(x) 2. Definovat _T přimo a překládat podle #ifdef _UNICODE #define T(x) L ## x #else #define T(x) x #endif CreateFileA WinCE: CreateFileA není unicode -> nelze pouzit makro CreateFile se překládá jako CreateFileW a tím pádem jsou vstupni parametry TCHAR 1. použit CreateFile jako unicode. Příklad fungující pod XP a CE TCHAR devicename[32]; swprintf_s( devicename, sizeof( devicename ), _T("COM%d:"), port ); urt->comfile = CreateFile( devicename,.

Overlapped WaitForMultipleObjects WinCE: wait for all objects is not supported. Příklad: WaitForMultipleObjects( 3, p->hobject, FALSE /*This parameter must be set to FALSE*/, 1000 ) Queue set - Nastaveni delky prijimaci/vysilaci fronty WinCE: compiling OK, but run error success = SetupComm( urt->comfile, 0, // InQueue 4096 // OutQueue ); if (! success) { UartFinalize( urt ); return false; } // WinCE vrátí chybu Zatím neřešeno. Ponechána defaultní velikost fronty. Cesty k souborům: WinCE: Nejsou relativní cesty. Vše je vztaženo z kořenového adresáře 1. Definovat cesty aboslutně 2. Použit funkci pro získání aktuálního adresáře. std::ostringstream, std::wostringstream - Now in new SDK is supported OK WinCE: Tyto funkce vyuzivají vyjímky, jejihž podpora není funkční. Při linkování se hlási chyby typu: error LNK2019: unresolved external symbol "public: thiscall std::exception::exception(char const *) 1. Vypnutí použivání vyjímek: #define _HAS_EXCEPTIONS 0 dojde sice ke zmenšení množství chyb, ale problém není zatím zcela vyřešen

Vyřešeno: Nová kompilace Windows CE s podporou RTTI (Runtime Type Information) a AYGShell a následné vytvoření nove SDK. pzn.: Host: russellk (Microsoft) Q: When I compile a evc C++ project with the /GX option I receive the following error: Lnk2001 unresolved external symbol "void stdcall `eh vector destructor iterator'(void *,unsigned int,int,void ( thiscall*)(void *))" When I remove the virtual des A: Your OS Image must be built with SYSGEN_CPP_SEH and SYSGEN_RTTI to support /GX Host: russellk (Microsoft) Q: RE: the LNK err with the /GX option, "void stdcall `eh vector destructor iterator' this error happens with the emulator. Why does this error occur in the emulator? A: The OS image was not built with the SYSGEN_RTTI (Runtime Type Information) option. You will need to rebuild the image and include this feature for your application to link. The `eh vector destructor iterator' will be exported from COREDLL. Grafika CreateRectRgn 1. zkusti vytvořit region jinými funkcemi ( CRgn je podporován ) 2. dc.setbkmode(transparent); dc->roundrect( r_rnd, pt ); SetBkMode(TRANSPARENT) WinCE: Nedochází k překresleni pozadí rodičovským oknem. (pod prvkem se nekreslí podklad tedy v podkladu se objevuje grafika i z jiných aplikaci ) 1. Při zavolnání OnPaint() u rodiče (majitele podkladu) na začátku před CPaintDC dc(this) skrtýt prvek s průhledným pozadím funkcí m_pruhlednyprvek.showwindow( SW_HIDE ) a po nakreslení pozadí znovu zavolat m_pruhlednyprvek.showwindow( SW_SHOWNORMAL ) 2. Vykreslovani pozadi použitím napr. BitBlt(...) před vlastnim kreslením prvku Pole tříd ovozených z MFC - Now in new SDK is supported OK problém: nejde deklarovat např. CStatic m_text[5];

1. funguje CStatic *m_text[5] či CStatic m_text1, m_text2,... pzn.: Vytvoření pole vlastních tříd funguje. Vyřešeno: Viz. výše vytvoření nové SDK pro platformu VIA Epia-M Dialogs Neklientské zprávy Zprávy typu WM_NC... Not supported., except WM_NCDESTROY. Naopak např. zpráva ON_WM_MOUSEMOVE() je zasílána oknu i v případě, že se kurzor pohybuje po prvcích které okno obsahuje. 1. try PossiblyEatMessage(...)? WINDOWPLACEMENT WINDOWPLACEMENT posdlg; GetWindowPlacement( &posdlg ); LONG x = posdlg.rcnormalposition.left; 1. Ke zjištění polohy okna lze použít např CRect r_wnd; GetWindowRect( r_wnd ); int x = r_wnd.left; 2. Ke zjištění velikosti CRect r_wnd; GetClientRect( r_wnd ); int sizex = r_wnd.height(); Moving the our dialog by clicking on anywhere I added one more feature in this sample i.e. Moving the our dialog by clicking on anywhere on the window. This can be do by posting WM_NCLBUTTONDOWN message to HTCAPTION Handle this statement in OnLButtonDownMessage(...) PostMessage(WM_NCLBUTTONDOWN,HTCAPTION,MAKELPARAM(point.x,point.y)) WinCE: WM_NCLBUTTONDOWN - Not supported!

1. Nelze použít ani v API - WM_NCHITTEST. Provizorni použití OnLButtonDown(), OnMouseMove(), OnLButtonUp(). Má však své nevýhody.