Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Srpska latinica u c++

[es] :: C/C++ programiranje :: Srpska latinica u c++

[ Pregleda: 2718 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

j0y
skola
Svemir

Član broj: 157640
Poruke: 22
79.101.165.*



Profil

icon Srpska latinica u c++14.05.2008. u 15:47 - pre 194 meseci
Vidjao sam nekoliko slicnih tema, ali i dalje mi nije jasno kako moze ovo da se uradi:
potrebno je da program iz baze "povuce" odredjeni tekst koji sadrzi slova srpske latinice (č,ć,š,đ,ž,dž) i da interpretira u command promptu(MS-Dosu).Citao sam da se ukljucuje #define UNICODE, ali i dalje mi ne znam kako to funkcionise pa ako moze objasnjenje ili neki primer?

Unapred hvala!

[Ovu poruku je menjao j0y dana 14.05.2008. u 20:33 GMT+1]
j0y
 
Odgovor na temu

deerbeer
Beograd

Član broj: 174418
Poruke: 1189
*.adsl-3.sezampro.yu.



+395 Profil

icon Re: Srpska latinica u c++14.05.2008. u 20:24 - pre 194 meseci
MS VC++ ili BorlandC++ ?

Ako trazis za MS VC++ :
Otvori *.rc fajl kojeg ces nadjes u projektnom folderu i nadji parce koda :
Code:

STRINGTABLE  
BEGIN
   IDS_APP_TITLE       "xxxxxxxxxx" 
   IDS_TVOJ_STRING   "xxxxxxxxx"  //stavi ovde latinicni  tekst" 
END

Snimi fajl kao Save As i promeni u "Encioding" = Unicode

Code:

int _tmain(int argc, TCHAR* argv[], TCHAR* envp[])
{
      HINSTANCE hModule = NULL; 
      // null zato sto je tvoj resource tj. baza sa text-om  u exe file-u 
     // ako hoces iz nekog drugog DLL-a da procitas neki tekst onda 
      // HINSTANCE hModule = LoadLibrary(_T("srpLat.dll")); 

      HRSRC     hResource = NULL; // memorijska adresa gde ti se nalaze latinicni znakovi 

       hResource = FindResourceEx( AfxGetResourceHandle() ,/* ovde promenis ako hoces da cita iz nekog drugog  language DLL-a*/, 
                                     RT_STRING, // RT_HTML ,RT_DIALOG tj. tip resursa koji dobijas string ,HTML, Binary , Bitmaps, Dialog itd .... 
                                       MAKEINTRESOURCE(IDS_TVOJ_STRING), //ID tvog resursa 
                                       MAKELANGID(LANG_CROATIAN), // language postavi na latinicu 
                                       SUBLANG_DEFAULT) );

 if( hResource != NULL )
         wchar_t   *pwchMem =  (wchar_t *)LoadResource( hModule, hResource );

}

Malo vise cimanja al kao sto pomenuh u http://www.elitesecurity.org/t...a-programima-pravljenjim-sa-VC
jer nazalost VSC++ Resource Editor nema podrsku za Unicode karaktere koje se direktno unose bez otvaranja externog programa (notepad ,wordpad itd ..)






[Ovu poruku je menjao deerbeer dana 14.05.2008. u 21:42 GMT+1]

[Ovu poruku je menjao deerbeer dana 14.05.2008. u 21:44 GMT+1]
Viva lollapalooza
 
Odgovor na temu

j0y
skola
Svemir

Član broj: 157640
Poruke: 22
91.150.121.*



Profil

icon Re: Srpska latinica u c++14.05.2008. u 20:37 - pre 194 meseci
Hvala ti, a da li postoji nesto za Dev C++?

[Ovu poruku je menjao j0y dana 14.05.2008. u 21:47 GMT+1]
j0y
 
Odgovor na temu

deerbeer
Beograd

Član broj: 174418
Poruke: 1189
*.adsl-1.sezampro.yu.



+395 Profil

icon Re: Srpska latinica u c++14.05.2008. u 22:07 - pre 194 meseci
Bilo koje okruzenje (bazirano na C++ :DevC++ ,BCB ,VC++itd) da koristis koje se oslanja na WIN32 API pozivas iste funkcije kao u "main-u" :
LoadLibrary , LoadResource , FindResourceEx .
wchar_t* je deo C++ standarda tako da ne moras da brines i mozes i sam da napravis u DevC++ od onoga sto sam ti pokazao ..
a kako unosis string-ove i editujes ostale resurse u tom okruzenju to zavisi od konkretnog slucaja ... google-aj malo nije na odmet ...

Viva lollapalooza
 
Odgovor na temu

mt88

Član broj: 182918
Poruke: 1
91.150.119.*



Profil

icon Re: Srpska latinica u c++29.05.2008. u 20:52 - pre 193 meseci
Ja ovo ne razumem najbolje, moze li malo detaljnije objasnjenje, ja sam pocetnik, a zanima me kako bih ovo uradio:
Code:
#include<iostream>
#include <windows.h>
#include<fstream>
#include<cstdlib>

using namespace std;

int _tmain(int argc, TCHAR* argv[], TCHAR* envp[])
{
    WCHAR _T;
      HINSTANCE hModule = LoadLibrary(_T("name.dll")) 
      
      HRSRC     hResource = NULL;

       hResource = FindResourceEx( AfxGetResourceHandle() ,
                                     RT_STRING, // RT_HTML ,RT_DIALOG 
                                       MAKEINTRESOURCE(IDS_TVOJ_STRING), 
                                       MAKELANGID(LANG_CROATIAN), 
                                       SUBLANG_DEFAULT) );

 if( hResource != NULL )
         wchar_t   *pwchMem =  (wchar_t *)LoadResource( hModule, hResource );

}
}



sta treba jos da se uradi, sta promeniti, dodati, ne razumem, negde gresim...?
 
Odgovor na temu

deerbeer
Beograd

Član broj: 174418
Poruke: 1189
*.adsl-a-1.sezampro.yu.



+395 Profil

icon Re: Srpska latinica u c++30.05.2008. u 08:59 - pre 193 meseci
Code:

#include<iostream>
#include <windows.h>
#include<fstream>
#include<cstdlib>

using namespace std;

int _tmain(int argc, TCHAR* argv[], TCHAR* envp[])
{
   // Pre nego sto pozoves funkciju 
   // LoadLibrary moras da napravis DLL koji ce sadrzati samo resurse u programu (bez ikakvog koda).. 

   wchar_t  *pwchTvojString = NULL ;
   HINSTANCE hModule = LoadLibrary(_T("name.dll"))  // ucitavas language  DLL i dobijas njegovu instancu u  hModule 
      
   HRSRC     hResource = NULL; // instanca resursa koja se nalazi u exe ili DLL  fajlu ... 
      
   //resursi mogu biti razlictog tipa (string ,Bitmape ,HTML,Dialog , Meni-iji,Toolbar-ovi  itd.)  
   // U ovom slucaju u Visual Studio imas toolbox koji se zove Resource Editor i preko koga manipulises svim resursima koji koristi tvoj program 
   // Pronadji odeljak koji se zove String table preko koga unosis tvoje karaktere naslove itd ... 
   // Svaki red u String tabeli ima svoj ID (identifikator) (npr. das mu ID da bude ID_MOJ_TEKST) i za value uneses tvoj tekst 
   // medjutim za unicode karaktere NECES moci u njega direktno da unosis vec moras da rucno otvoris *.rc fajl u notepad-u ili bilo kom drugom programu 
   // u kome ces uneti tvoj tekst koji treba da se prikaze ..... (pogledaj primer iz prethodnog posta )
  
   // sa ovom funkcijom FindResourceEx pronalazis odredjeni tip resursa koji treba da izvuces iz DLL-a ili iz EXE-a ... 
   // ako ti treba latinicni string iz string tabele  tj. karakteri postavi parametar na RT_STRING .. 
    
   hResource = FindResourceEx(hModule  , // instanca tvog language DLL-a 
                                          RT_STRING, // tip resursa 
                                          MAKEINTRESOURCE(ID_MOJ_TEKST), // ID tvog stringa koji si uneo prethodno preko *.rc fajla pogledaj 
                                          MAKELANGID(LANG_CROATIAN), 
                                          SUBLANG_DEFAULT) );



   // ako si nasao tvoj tip resursa ucitas ga u neku promenjljivu (wchar_t*) sa funkcijom LoadResource .... 
  // parametri su hModule (instance DLL-a ) i hResource (instanca tvog resursa u samom DLL-u )
  
   if( hResource != NULL )
         wchar_t   *pwchTvojString =  (wchar_t *)LoadResource( hModule, hResource );

   }
}


http://msdn.microsoft.com/en-us/library/ms648043(VS.85).aspx

LoadAccelerators Loads an accelerator table.
LoadBitmap Loads a bitmap resource.
LoadCursor Loads a cursor resource.
LoadIcon Loads an icon resource.
LoadMenu Loads a menu resource.
LoadString Loads a string-table entry.

Ove funkcije ti skracuju posao u jer jednom pozivu ucitavas u memoriju bilo koji od navedenih resursa ...
Vise
http://msdn.microsoft.com/en-us/library/ms647486(VS.85).aspx
Code:

int LoadString(HINSTANCE hInstance, UINT uID,LPTSTR lpBuffer,int nBufferMax) ; 
// hInstance - modul iz koga ucitavas stringove .. stavi NULL ako ti se resursi nalaze u samom EXE - fajlu 
//nID je ID tvog stringa , LPTSTR je buffer u koji smestas karaktere i koji si inicijalizovao pre toga 
//nBufferMax max. broj karaktera koji uzimas is resursa koji staje u lpBuffer  ...





[Ovu poruku je menjao deerbeer dana 31.05.2008. u 16:43 GMT+1]

[Ovu poruku je menjao deerbeer dana 31.05.2008. u 16:45 GMT+1]
Viva lollapalooza
 
Odgovor na temu

[es] :: C/C++ programiranje :: Srpska latinica u c++

[ Pregleda: 2718 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.