Anonymní profil Pawl – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil Pawl – Programujte.comAnonymní profil Pawl – Programujte.com

 

Příspěvky odeslané z IP adresy 77.48.235.–

Pawl
C / C++ › UNICODE <-> MULTIBYTE…
3. 1. 2010   #122180

To liborb :
parametry funkuce ::MultiByteToWideChar by měli být Ok.

liborb napsal:
Ale když koukám na zápis _T("něco") a CHAR[] ... nechtěl si náhodou napsat, že je to typu TCHAR[]? Pak by se to všechno vysvětlilo.



1) V aplikace kde se se soubor vytváří CharSet nastavena na MultiByte.

Strukuroa hlavičky;
struct HEADERDATA{

DWORD kontrola;
CHAR sPopis[128];
BYTE cocka;
};


Do proměnné sPopis jenom kopiruju.

2) V druhé aplikaci co tento soubor otevírá je zase charSet nastaven na Unicode
pro přečtení proměnné sPopis musím použít ::MultiByteToWideChar.

Problém je že čárky a háčky jsou nahrazeny jinými znaky.

pawl
C / C++ › UNICODE <-> MULTIBYTE…
30. 12. 2009   #121935

Zdar,

V jedné aplikaci vytvářím v hlavičce binárního souboru textový popis ( je uložen v CHAR[])

Při převodu v jiné aplikaci běžící na platformě WIN CE5
se v UNICODE znaky nezobrazují správě



MultiByteToWideChar(CP_ACP, 0, hd.sPopis, sizeof(hd.sPopis),text.GetBuffer(sizeof(hd.sPopis)),sizeof(hd.sPopis));


Přitom texty přímo napsané _T("něco") fungují.
Kde může být problém

Pawl
C / C++ › ATL CList-hledani zaznamu
4. 11. 2009   #118503

Ahoj potrbuji vytvorit (seznam,pole) struktur a paté v ní nasledne i hledat.
Zkousel jsem to z CList< >

Ahoj mam definovou strukturu dat.



struct CInfo
{
CInfo(){}
CInfo(const CString& szName, CTime time, BYTE byStatus=0, bool bDir = false)
:m_szName(szName), m_time(time), m_byStatus(byStatus), m_bDir(bDir){}
CString m_szName;
bool m_bDir;
CTime m_time;
BYTE m_byStatus;
};


potřebuji shoromaždovat data

typedef CList<CInfo, CInfo> CInfoList;

přidám do ní data

CInfoList list;

.
.
list.AddTail(CAddInfo(_T("něco"), m_nejakycas ));
.
.


vypis

POSITION pp = list.GetHeadPosition();

while (pp)
{
CInfo* padi = &list.GetNext(pp);

.
.
.

}


hledani

 CInfo zaznam;

zaznam.m_bDir = _T("C:\\WINDWSNT\SYSTEM32\\neco.fll");
// ostatni clenove jsou neznami

list.find(zaznam); // nejde !!


Je tento nástroj CList vhodný?

pawl
C / C++ › unresolved external symbol -…
18. 10. 2009   #117433

Ahoj,
používám knihovnu generovanou rozhraním IDL, jedná se o (OPC Server) pokud tento hlavičkový soubor používám pouze v "jednom" soubor tak je všechno v pořádku:

př:



///////////////////////////// subor opcmm.h
#pragma once

#include "resource.h"
#include "opc_h.h"

///////////////////////////// subor opcmm.cpp

#include "stdafx.h"
#include "opcmm.h"

// objekty z kinhovny opc_h.h
IMalloc *g_pIMalloc;
IOPCServer *g_pOPC; //interface of server object
IOPCItemMgt *g_pItemMgt; //interface of group object
OPCITEMRESULT *g_pItemResult; //special datatype for item
OPCHANDLE g_GrpSrvHandle;

v tomto přídě není žádný problém jemožno přistupovat ke všem objektům knihovny

Ale pokd vytvořím třídu a přidám do té třídy odkaz na knihovnu opcmm.h nebo opc_h.h je problém



//////////////// opcclient.h
#include "opcmm.h"

#pragma once

// COpcClient command target

class COpcClient : public CObject
{
public:
COpcClient();
virtual ~COpcClient();
bool connect(CString opcname);
CAtlArray<CString> items;
private:
bool mComCreaed;
IMalloc *g_pIMalloc;
IOPCServer *g_pOPC; //interface of server object
IOPCItemMgt *g_pItemMgt; //interface of group object
OPCITEMRESULT *g_pItemResult; //special datatype for item
OPCHANDLE g_GrpSrvHandle;
};
//////////////// opcclient.cpp
/ opccobj.cpp : implementation file
//

#include "stdafx.h"
#include "opcClinet.h"
#include "opcmm.h"

// opccobj

COpcClient::COpcClient()
{
HRESULT r1;

// General COM initialization...
g_pIMalloc =NULL;
g_pOPC = NULL;
g_pItemMgt =NULL;
g_pItemResult =NULL;
g_GrpSrvHandle = 0;

items.RemoveAll();

r1 = CoInitialize(NULL);
_ASSERT(r1);
.
.
.


Dostane se mě toto výpisu
OpcClient.obj : error LNK2001: unresolved external symbol _IID_IOPCServer

C:\Zdroje\CPP_Visual_moje\opcmm\Debug\opcmm.exe : fatal error LNK1120: 1 unresolved externals


Pawl
C / C++ › Práce z řetězci - nahrazení
11. 10. 2009   #117083

Ahoj,

Mám řetězec
char d[]="Nejake data $029 V rámci prevence před zbytečnými$028příspěvky neregistrovaných$021 uživatelů..."

potřebuji v tomto řetězci nahradit nahradit "$xxx" vyjadření vložením příslušného bajt hodnoty čisla za znakem. Asi by to šlo pořešit smyčkou a postupným procházení všech znaků analyzováni a znovu sestavení, nebo přes funkci string::replace, ale s ni nemam zkušenosti.

Neřešili jste někdo nějaký podobný problém.

Díky

C / C++ › Vyvoj aplikaci na platformu…
16. 8. 2008   #82954

To yaqwsx : Otázka tedy zní jakým způsobem vyvíjet aplikace pro CE ve visual studiu.

C / C++ › Vyvoj aplikaci na platformu…
15. 8. 2008   #82902

To midin : Zařízení do kterého chci pást není vlatně "mobil" jedná s o takový "prumyslový počítač" z procesorem RISC 200 MHz:http://www.microinnovation.com/en/desktopdefault.aspx/tabid-4/5_view-6/ na tomto počítači běží Windws CE5 - to je tak jediné co se dát zjistit. Dále tem běží Softwarove PLC (programovatlný automat) a aplikaca na Vizualizaci (která sice není špatná, ale chtěl bych jí nahradit vlastní, třeba pro možnosti přístupu do Databázích a podobný věcí co stavající app nepodporuje)

C / C++ › Vyvoj aplikaci na platformu…
9. 8. 2008   #82443

Dobrý den,

Jakým způsobem nástrojem lze vyvíjet aplikace ma WinCE? Mám instalovené Visual Studio 2008. Je zde položka "Smart Device" pak zvolím MFC Smaert Device App. Po té dám v průvodci platforma Installed SDKs
. Pocket PC 2003
. Smart phone 2003
. Windows Mobile 5 Pocket
. Windows Mobile 5 SmartPhone

O této problamtice moc (nic) nevím takže ani nevím jaký je mezi jednotlivými položkami rozdíl
Mám "ovládací panel" kde běží Winodws CE 5.0. Tam bych chtěl udělat nějakou jednoduchou aplikaci založenou na MFC.

Děkuji

Samek

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032021 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý