Developer
Developer
  • Mesaje: 42
    Membru din: 05 Oct 2024, 18:59
  • Reacții: 552
  • Mesaje utile: 1
  • Status: $ rm -rf /stress 🗑️
  • Regat: Shinsoo
  • [ID Discord]
  • Contact:

    Medalii



    Conținut: Ascuns
    Reacționează ❤️ la acest mesaj și conținutul se va afișa automat.

    Nou Cum descarc de pe TeraBox?

    Afișează detalii Ascunde detalii
    • Este asemănător cu Mega.nz
    • Instalați-vă clientul lor de Download de aici
    • Faceți-vă un cont (vă puteți loga cu Facebook / Google / etc)
    • Nou Dacă nu vreți să descărcați clientul de Download, folosiți acest site
    • Gata! Acum puteți descărca resursele rapid & simplu.

    De ce folosim TeraBox?

    • Este gratuit
    • Primești 1TB de spațiu gratuit la orice cont creat!
    • Este ușor de folosit și varianta premium este foarte ieftină
    • Fișierele nu sunt șterse niciodată
    TeraBox logo
    Membru Ucenic
    Membru Ucenic
  • Mesaje: 16
    Membru din: 12 Ian 2025, 01:13
  • Reacții: 11
  • Mesaje utile: 0
  • Status: Pierd vremea ^.^
  • Regat: Chunjo
  • Medalii

    Avatar utilizator
    Membru Ucenic
    Membru Ucenic

    Mesaj de sub7 »

    Daca va scoate din client va las un fix:
    inlocuiti
    Code:
    const BOOL result = GetMessage(&msg, NULL, 0, 0);
    cu
    Conținut: Ascuns
    Reacționează ❤️ la acest mesaj și conținutul se va afișa automat.
    Membru Ucenic
    Membru Ucenic
  • Mesaje: 33
    Membru din: 01 Oct 2024, 12:48
  • Reacții: 190
  • Mesaje utile: 0
  • Status: Pierd vremea ^.^
    Server: Prodomo
  • Regat: Shinsoo
  • [ID Discord]
  • Contact:

    Medalii

    Avatar utilizator
    Membru Ucenic
    Membru Ucenic

    Mesaj de essex »

    Există o mică problemă în codul pe care tu l-ai postat. Există diferite versiuni de limbă română cum ar fi legacy sau moldova, care au hex-uri diferite pentru diacritice în special Ș si Ț, un unicode diferit în funcție de layout-ul folosit. Postez mai jos codul complet, pentru orice tip de keyboard layout folosit


    Code:
    bool CMSApplication::MessageProcess()
    {
    	MSG msg;
    
    	const BOOL result = GetMessage(&msg, NULL, 0, 0);
    	if (result <= 0)
    		return false;
    
    	if (msg.message == WM_KEYDOWN)
    	{
    		HKL hklCurrent = GetKeyboardLayout(0);
    		WORD langId = LOWORD((DWORD_PTR)hklCurrent);
    		if ((langId & 0x3FF) == 0x18)
    		{
    			BYTE abKeyState[256];
    			if (GetKeyboardState(abKeyState))
    			{
    				WCHAR awBuffer[4] = { 0, };
    				BYTE bScanCode = (BYTE)((msg.lParam >> 16) & 0xFF);
    				int iRet = ToUnicodeEx((UINT)msg.wParam, bScanCode, abKeyState, awBuffer, 4, 0, hklCurrent);
    				if (iRet == 1)
    				{
    					WCHAR wCorrected = 0;
    					switch (awBuffer[0])
    					{
    					case 0x0219: wCorrected = 0x015F; break;
    					case 0x021B: wCorrected = 0x0163; break;
    					case 0x0218: wCorrected = 0x015E; break;
    					case 0x021A: wCorrected = 0x0162; break;
    					}
    					if (wCorrected != 0)
    					{
    						char cAnsi = 0;
    						if (WideCharToMultiByte(1250, 0, &wCorrected, 1, &cAnsi, 1, NULL, NULL) > 0)
    						{
    							PostMessage(msg.hwnd, WM_CHAR, (WPARAM)(BYTE)cAnsi, msg.lParam);
    							DispatchMessage(&msg);
    							return true;
    						}
    					}
    				}
    			}
    		}
    	}
    
    	TranslateMessage(&msg);
    	DispatchMessage(&msg);
    	return true;
    }
    Scrie răspuns

    Creează-ți un cont sau autentifică-te pentru a participa la discuție

    Trebuie să fii membru pentru a răspunde

    Creează-ți un cont

    Membrii pot crea subiecte noi și pot descărca resurse Metin2 Gratuit!


    Te poți înregistra sau conecta rapid utilizând contul tău de Discord, Github sau Google.

    Înregistrare

    Autentifică-te

    Înapoi la “FIX-uri”

    Informații

    Utilizatori ce navighează pe acest forum: Zbychu și 0 vizitatori

    Discord ID copiat: