windows 10 pro office 2019 pro office 365 pro windows 10 home windows 10 enterprise office 2019 home and business office 2016 pro windows 10 education visio 2019 microsoft project 2019 microsoft project 2016 visio professional 2016 windows server 2012 windows server 2016 windows server 2019 Betriebssysteme office software windows server https://softhier.com/ instagram takipçi instagram beğeni instagram görüntüleme instagram otomatik beğeni facebook beğeni facebook sayfa beğenisi facebook takipçi twitter takipçi twitter beğeni twitter retweet youtube izlenme youtube abone instagram

Read registry and output to console with C++

Asked By: Anonymous

As a C++ beginner I need your help!

I’m currently working on a program that should be able to read a registry key and its value and write it into a vector array for further processing.

But now I have the problem that umlauts are displayed cryptically in the output on the console. I suspect this is due to the fact that a wrong character encoding is used. After some research I found the function "SetConsoleOutputCP(65001)", which is supposed to set the output of the console to UTF8.

Unfortunately, the output now breaks on umlauts if the Unicode compatible functions were used to read the registry. In the second case the console simply hides the umlauts when using the ANSI compatible functions. What am I doing wrong here and how do I get umlauts correctly read from the registry and output to the console?

Also I would like to write the umlauts correctly into a CSV file later. Do I have to pay attention to anything special here as well?

You can find my code below with some comments.
Thanks to all helpers!

#include <iostream>
#include <string>
#include <vector>
#include <windows.h>
    
/**
 * @brief Function to read an registry key to a vector of strings. Registry function will be called as unicode compatible version e.g. RegQueryValueExW (W at the end). This function is overloaded and exists with a different parameter list as well.
 * 
 * @param rootKey Standard hkey for the root key value
 * @param subKey Specific path for a subkey value
 * @param value The value name whose value is to be read
 * @return std::vector<std::wstring> 
 */
std::vector<std::wstring> regMultiSzToVector(HKEY rootKey, LPCWSTR subKey, LPCWSTR value) {
    HKEY hkey;
    DWORD type, size;
    std::vector<std::wstring> target;

    // Open registry key and write it to hkey variable
    if (RegOpenKeyEx(rootKey, subKey, 0, KEY_READ | KEY_WOW64_64KEY, &hkey) != ERROR_SUCCESS)
        exit(1);
    
    // Get type and necessary memory size
    if (RegQueryValueExW(hkey, value, NULL, &type, NULL, &size) != ERROR_SUCCESS)
        exit(1);

    if (type == REG_MULTI_SZ) {
        std::vector<wchar_t> temp(size / sizeof(wchar_t));

        if (RegQueryValueExW(hkey, value, NULL, NULL, reinterpret_cast<LPBYTE>(&temp[0]), &size) != ERROR_SUCCESS)
            exit(1);

        // Writing value from registry key to string array
        size_t index = 0;
        size_t len = wcslen(&temp[0]);
        while (len > 0) {
            target.push_back(&temp[index]);
            index += len + 1;
            len = wcslen(&temp[index]);
        }
    }
    // Closing registry key (see API)
    RegCloseKey(hkey);
    return target;
}

/**
 * @brief Function to read an registry key to a vector of strings. Registry function will be called as ansi compatible version e.g. RegQueryValueExA (A at the end). This function is overloaded and exists with a different parameter list as well.
 * 
 * @param rootKey Standard hkey for the root key value
 * @param subKey Specific path for a subkey value
 * @param value The value name whose value is to be read
 * @return std::vector<std::string> 
 */
std::vector<std::string> regMultiSzToVector(HKEY rootKey, LPCSTR subKey, LPCSTR value) {
    HKEY hkey;
    DWORD type, size;
    std::vector<std::string> target;

    // Open registry key and write it to hkey variable
    if (RegOpenKeyExA(rootKey, subKey, 0, KEY_READ | KEY_WOW64_64KEY, &hkey) != ERROR_SUCCESS)
        exit(1);

    // Get type and necessary memory size
    if (RegQueryValueExA(hkey, value, NULL, &type, NULL, &size) != ERROR_SUCCESS)
        exit(1);

    if (type == REG_MULTI_SZ) {
        std::vector<char> temp(size);

        if (RegQueryValueExA(hkey, value, NULL, NULL, reinterpret_cast<LPBYTE>(&temp[0]), &size) != ERROR_SUCCESS)
            exit(1);
        
        // Writing value from registry key to string array
        size_t index = 0;
        size_t len = strlen(&temp[0]);
        while (len > 0) {
            target.push_back(&temp[index]);
            index += len + 1;
            len = strlen(&temp[index]);
        }
    }
    // Closing registry key (see API)
    RegCloseKey(hkey);
    return target;
}

int main(int argc, char const* argv[]) {
    
    // Saving function return values to vectors
    std::vector<std::wstring> result1 = regMultiSzToVector(HKEY_LOCAL_MACHINE, L"SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\007", L"Counter");
    std::vector<std::string> result2 = regMultiSzToVector(HKEY_LOCAL_MACHINE, "SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\007", "Counter");
    
    // Printing String values from first and second vector
    printf("Vector 1: n");
    for (auto &e : result1) {
        std::wcout << e << std::endl;
    }

    printf("nnn Vector 2: n");
    for (auto &e : result2) {
        std::cout << e << std::endl;
    }
    
    return 0;
}

Solution

Answered By: Anonymous

If you want to use CP65001 (UTF-8) then you also need to convert your utf-16 encoded wstring to a utf-8 encoded string.

Here is a simple way of doing this:
https://stackoverflow.com/a/12903901/347508

I’ve made only small modifications to your code:

  • change RegOpenKeyEx -> RegOpenKeyExW
  • remove the non-unicode portion of your code
  • print the result as raw wstring, and as utf-8 encoded string to demo the difference

#include <iostream>
#include <string>
#include <vector>
#include <windows.h>
#include <codecvt>

#pragma comment(lib, "user32")
#pragma comment(lib, "Advapi32")

// utf-8 conversion from https://stackoverflow.com/a/12903901/347508
// convert UTF-8 string to wstring
std::wstring utf8_to_wstring (const std::string& str)
{
    std::wstring_convert<std::codecvt_utf8<wchar_t>> myconv;
    return myconv.from_bytes(str);
}

// convert wstring to UTF-8 string
std::string wstring_to_utf8 (const std::wstring& str)
{
    std::wstring_convert<std::codecvt_utf8<wchar_t>> myconv;
    return myconv.to_bytes(str);
}

/**
 * @brief Function to read an registry key to a vector of strings. Registry function will be called as unicode compatible version e.g. RegQueryValueExW (W at the end). This function is overloaded and exists with a different parameter list as well.
 * 
 * @param rootKey Standard hkey for the root key value
 * @param subKey Specific path for a subkey value
 * @param value The value name whose value is to be read
 * @return std::vector<std::wstring> 
 */
std::vector<std::wstring> regMultiSzToVector(HKEY rootKey, LPCWSTR subKey, LPCWSTR value) {
    HKEY hkey;
    DWORD type, size;
    std::vector<std::wstring> target;

    // Open registry key and write it to hkey variable
    if (RegOpenKeyExW(rootKey, subKey, 0, KEY_READ | KEY_WOW64_64KEY, &hkey) != ERROR_SUCCESS)
        exit(1);
    
    // Get type and necessary memory size
    if (RegQueryValueExW(hkey, value, NULL, &type, NULL, &size) != ERROR_SUCCESS)
        exit(1);

    if (type == REG_MULTI_SZ) {
        std::vector<wchar_t> temp(size / sizeof(wchar_t));

        if (RegQueryValueExW(hkey, value, NULL, NULL, reinterpret_cast<LPBYTE>(&temp[0]), &size) != ERROR_SUCCESS)
            exit(1);

        // Writing value from registry key to string array
        size_t index = 0;
        size_t len = wcslen(&temp[0]);
        while (len > 0) {
            target.push_back(&temp[index]);
            index += len + 1;
            len = wcslen(&temp[index]);
        }
    }
    // Closing registry key (see API)
    RegCloseKey(hkey);
    return target;
}


int main(int argc, char const* argv[]) {
    
    // Saving function return values to vectors
    std::vector<std::wstring> res = regMultiSzToVector(HKEY_LOCAL_MACHINE, L"SOFTWARE\Microsoft\Windows\CurrentVersion", L"hansi");
    
    // Printing String values from first and second vector
    printf("Result: n");
    for (auto &e : res) {
        std::wcout << "* utf-16=" << e << std::endl;
        std::cout  << "  utf-8 =" << wstring_to_utf8(e) << std::endl;
    }

    
    return 0;
}

My registry key for testing

Output:

C:UsersHansi>chcp 850
Active code page: 850

C:UsersHansi>cl /EHsc reg_test.cpp
Microsoft (R) C/C++ Optimizing Compiler Version 19.28.29910 for x64
Copyright (C) Microsoft Corporation.  All rights reserved.

reg_test.cpp
Microsoft (R) Incremental Linker Version 14.28.29910.0
Copyright (C) Microsoft Corporation.  All rights reserved.

/out:reg_test.exe
reg_test.obj

C:UsersHansi>reg_test.exe
Result:
* utf-16=Íl
  utf-8 =Öl
* utf-16=H÷ren
  utf-8 =H├Âren
* utf-16=T³re
  utf-8 =T├╝re
* utf-16=Daâ–€
  utf-8 =Daß

C:UsersHansi>chcp 65001
Active code page: 65001

C:UsersHansi>reg_test.exe
Result:
* utf-16=l
  utf-8 =Öl
* utf-16=Hren
  utf-8 =Hören
* utf-16=T  utf-8 =Türe
  utf-8 =Daß

techinplanet staff

Porno Gratuit Porno Français Adulte XXX Brazzers Porn College Girls Film érotique Hard Porn Inceste Famille Porno Japonais Asiatique Jeunes Filles Porno Latin Brown Femmes Porn Mobile Porn Russe Porn Stars Porno Arabe Turc Porno caché Porno de qualité HD Porno Gratuit Porno Mature de Milf Porno Noir Regarder Porn Relations Lesbiennes Secrétaire de Bureau Porn Sexe en Groupe Sexe Gay Sexe Oral Vidéo Amateur Vidéo Anal

Windows 10 Kaufen Windows 10 Pro Office 2019 Kaufen Office 365 Lizenz Windows 10 Home Lizenz Office 2019 Home Business Kaufen windows office 365 satın al follower kaufen instagram follower kaufen porno

Aydın escort muğla escort tekirdağ escort manisa escort balıkesir escort konyaaltı escort alanya escort manavgat escort didim escort kemer escort aksaray escort burdur escort kırklareli escort kastamonu escort adıyaman escort belek escort trabzon escort elazığ escort ordu escort kütahya escort ısparta escort rize escort maraş escort yalova escort giresun escort yozgat escort tokat escort şanlıurfa escort sivas escort batman escort erzurum escort sinop escort kırşehir escort karaman escort kırıkkale escort bolu escort amasya escort niğde escort uşak escort edirne escort çorum escort osmaniye escort zonguldak escort van escort erzincan escort söke escort nazilli escort kuşadası escort efeler escort didim escort çine escort bodrum escort fethiye escort marmaris escort dalaman escort menteşe escort milas escort ortaca escort seydikemer escort çerkezköy escort çorlu escort ergene escort kapaklı escort malkara escort süleymanpaşa escort akhisar escort alaşehir escort salihli escort şehzadeler escort soma escort turgutlu escort yunusemre escort bandırma escort altıeylül escort ayvalık escort bigadiç escort burhaniye escort gönen escort karesi escort susurluk escort ayvacık escort biga escort çan escort gelibolu escort yenice escort akçaabat escort araklı escort of escort ortahisar escort yomra escort karakoçan escort kovancılar escort altınordu escort fatsa escort perşembe escort ünye escort tavşanlı escort simav escort domaniç escort eğirdir escort yalvaç escort ardeşen escort cayeli escort fındıklı escort pazar escort afşin escort dulkadiroğlu escort Elbistan escort onikişubat escort pazarcık escort türkoğlu escort altınova escort çiftlikköy escort çınarcık escort bulancak escort espiye escort eynesil escort görele escort piraziz escort tirebolu escort yağlıdere escort sorgun escort sarıkaya escort çayıralan escort boğazlıyan escort akdağmadeni escort erbaa escort niksar escort turhal escort zile escort viranşehir escort suruç escort siverek escort karaköprü escort haliliye escort eyyübiye escort akçakale escort zara escort Yıldızeli escort suşehri escort şarkışla escort gemerek escort kozluk escort sason escort aziziye escort horasan escort oltu escort palandöken escort yakutiye escort ayancık escort boyabat escort gerze escort kaman escort mucur escort ermenek escort sarıveliler escort keskin escort yahşihan escort gerede escort göynük escort mengen escort mudurnu escort göynücek escort gümüşhacıköy escort merzifon escort suluova escort taşova escort bor escort çamardı escort ulukışla escort banaz escort eşme escort sivaslı escort havsa escort ipsala escort keşan escort osmancık escort sungurlu escort bahçe escort hasanbeyli escort kadirli escort toprakkale escort alaplı escort çaycuma escort ereğli escort kilimli escort başkale escort ipekyolu escort özalp escort tuşba escort kemah escort refahiye escort tercan escort üzümlü escort http://www.ddtshanghaiescort.com Antalya escort Bursa escort Mersin escort Aydın escort Balıkesir escort Çanakkale escort Kıbrıs escort Kütahya escort Manisa escort Muğla escort Tekirdağ escort Trabzon escort Yalova escort Isparta escort Maraş escort Ordu escort Rize escort Sivas escort Afyon escort Aksaray escort Giresun escort Şanlıurfa escort Yozgat escort Erzurum escort Amasya escort Çorum escort Tokat escort Uşak escort Van escort Bolu escort Burdur escort Kırşehir escort Niğde escort Osmaniye escort Zonguldak escort Düzce escort Edirne escort Erzincan escort Karabük escort Karaman escort Kastamonu escort Kırıkkale escort Kırklareli escort manavgat escort alanya escort belek escort aksu escort finike escort gazipaşa escort güllük escort kaş escort kemer escort kepez escort konyaaltı escort korkuteli escort kumluca escort lara escort muratpaşa escort serik escort gemlik escort gürsu escort inegöl escort iznik escort mudanya escort nilüfer escort orhangazi escort osmangazi escort yıldırım escort kuşadası escort didim escort nazilli escort söke escort efeler escort bandırma escort altıeylül escort edremit escort karesi escort susurluk escort bodrum escort gümbet escort turgutreis escort dalaman escort fethiye escort köyceğiz escort marmaris escort çerkezköy escort çorlu escort kapaklı escort süleymanpaşa escort meram escort anamur escort erdemli escort mezitli escort silifke escort tarsus escort akhisar escort salihli escort soma escort turgutlu escort girne escort lefkoşa escort biga escort çan escort gelibolu escort dinar escort emirdağ escort sandıklı escort merzifon escort suluova escort taşova escort yeşilyurt escort gerede escort mengen escort bucak escort kadirli escort osmancık escort sungurlu escort akçakoca escort ipsala escort keşan escort kilimli escort üzümlü escort aziziye escort palandöken escort yakutiye escort bulancak escort espiye escort tirebolu escort safranbolu escort lüleburgaz escort gediz escort simav escort tavşanlı escort elbistan escort fatsa escort ünye escort ardeşen escort çayeli escort birecik escort eyyübiye escort kırıkkale escort siverek escort suruç escort viranşehir escort kangal escort şarkışla escort suşehri escort yıldızeli escort erbaa escort niksar escort turhal escort akçaabat escort araklı escort of escort ortahisar escort sorgun escort istanbul masaj salonu ankara masaj salonu izmir masaj salonu bursa masaj salonu antalya masaj salonu adana masaj salonu konya masaj salonu şanlıurfa masaj salonu gaziantep masaj salonu kocaeli masaj salonu mersin masaj salonu diyarbakır masaj salonu hatay masaj salonu manisa masaj salonu kayseri masaj salonu samsun masaj salonu balıkesir masaj salonu maraş masaj salonu van masaj salonu aydın masaj salonu tekirdağ masaj salonu sakarya masaj salonu denizli masaj salonu muğla masaj salonu bağcılar masaj salonu bahçelievler masaj salonu esenler masaj salonu esenyurt masaj salonu kadıköy masaj salonu kağıthane masaj salonu kartal masaj salonu küçükçekmece masaj salonu maltepe masaj salonu pendik masaj salonu sultangazi masaj salonu ümraniye masaj salonu üsküdar masaj salonu aliağa masaj salonu alsancak masaj salonu bayraklı masaj salonu bornova masaj salonu buca masaj salonu çeşme masaj salonu çiğli masaj salonu gaziemir masaj salonu karşıyaka masaj salonu konak masaj salonu menemen masaj salonu ödemiş masaj salonu torbalı masaj salonu çankaya masaj salonu keçiören masaj salonu mamak masaj salonu polatlı masaj salonu sincan masaj salonu alanya masaj salonu belek masaj salonu kaş masaj salonu kemer masaj salonu korkuteli masaj salonu lara masaj salonu manavgat masaj salonu serik masaj salonu side masaj salonu didim masaj salonu efeler masaj salonu kuşadası masaj salonu nazilli masaj salonu altıeylül masaj salonu bandırma masaj salonu edremit masaj salonu karesi masaj salonu susurluk masaj salonu gemlik masaj salonu gürsu masaj salonu inegöl masaj salonu mudanya masaj salonu nilüfer masaj salonu osmangazi masaj salonu yıldırım masaj salonu biga masaj salonu çan masaj salonu gelibolu masaj salonu adıyaman masaj salonu afyon masaj salonu ağrı masaj salonu aksaray masaj salonu amasya masaj salonu ardahan masaj salonu artvin masaj salonu bartın masaj salonu batman masaj salonu bayburt masaj salonu bilecik masaj salonu bingöl masaj salonu bitlis masaj salonu bolu masaj salonu burdur masaj salonu çanakkale masaj salonu çankırı masaj salonu çorum masaj salonu düzce masaj salonu edirne masaj salonu elazığ masaj salonu erzincan masaj salonu erzurum masaj salonu eskişehir masaj salonu giresun masaj salonu gümüşhane masaj salonu ığdır masaj salonu ısparta masaj salonu karabük masaj salonu karaman masaj salonu kastamonu masaj salonu kilis masaj salonu kırıkkale masaj salonu kırklareli masaj salonu kırşehir masaj salonu uşak masaj salonu kütahya masaj salonu malatya masaj salonu mardin masaj salonu nevşehir masaj salonu niğde masaj salonu ordu masaj salonu trabzon masaj salonu osmaniye masaj salonu rize masaj salonu siirt masaj salonu sinop masaj salonu sivas masaj salonu tokat masaj salonu karahayıt masaj salonu pamukkale masaj salonu nizip masaj salonu şahinbey masaj salonu şehitkamil masaj salonu antakya masaj salonu defne masaj salonu iskenderun masaj salonu darıca masaj salonu gebze masaj salonu gölcük masaj salonu izmit masaj salonu körfez masaj salonu akşehir masaj salonu beyşehir masaj salonu ereğli masaj salonu karatay masaj salonu meram masaj salonu selçuklu masaj salonu akhisar masaj salonu alaşehir masaj salonu soma masaj salonu turgutlu masaj salonu akdeniz masaj salonu anamur masaj salonu erdemli masaj salonu mezitli masaj salonu silifke masaj salonu tarsus masaj salonu toroslar masaj salonu yenişehir masaj salonu bodrum masaj salonu dalaman masaj salonu fethiye masaj salonu köyceğiz masaj salonu marmaris masaj salonu menteşe masaj salonu milas masaj salonu adapazarı masaj salonu serdivan masaj salonu atakum masaj salonu çarşamba masaj salonu ilkadım masaj salonu eyyübiye masaj salonu siverek masaj salonu viranşehir masaj salonu çerkezköy masaj salonu çorlu masaj salonu erbaa masaj salonu adana escort adapazarı escort adıyaman escort afşin escort afyon escort ağrı escort ahlat escort akçaabat escort akçakale escort akçakoca escort akdeniz escort akhisar escort aksaray escort akşehir escort aksu escort akyazı escort alanya escort alaşehir escort aliağa escort altıeylül escort altınordu escort amasya escort anamur escort ankara escort antakya escort antalya escort araklı escort ardahan escort ardeşen escort arnavutköy escort atakum escort avanos escort avcılar escort aydın escort ayvacık escort ayvalık escort aziziye escort babaeski escort bafra escort bağcılar escort bağlar escort balıkesir escort bandırma escort bartın escort batıkent escort batman escort battalgazi escort bayburt escort belek escort besni escort beylikdüzü escort beyşehir escort biga escort bilecik escort bingöl escort birecik escort bismil escort bitlis escort bodrum escort bolu escort bor escort bornova escort boyabat escort bozüyük escort buca escort bucak escort bulancak escort bulanık escort bünyan escort burdur escort bursa escort çan escort çanakkale escort canik escort çankaya escort çankırı escort çarşamba escort çayeli escort çekmeköy escort çerkeş escort çerkezköy escort çeşme escort ceyhan escort çivril escort çorlu escort çorum escort çubuk escort çukurova escort çumra escort dalaman escort darıca escort datça escort davutlar escort defne escort denizli escort derince escort develi escort didim escort digor escort dinar escort diyadin escort diyarbakır escort doğanşehir escort doğubayazıt escort dörtyol escort dulkadiroğlu escort düzce escort edirne escort edremit escort efeler escort elazığ escort elbistan escort emirdağ escort erbaa escort erdemli escort ereğli escort erenler escort ergani escort ergene escort erzincan escort erzurum escort escort esenler escort eskil escort eskişehir escort espiye escort eyyübiye escort fatih escort fatsa escort fethiye escort finike escort fındıklı escort gaziantep escort gaziemir escort gebze escort gediz escort gelibolu escort gemerek escort gemlik escort gerede escort giresun escort gölbaşı escort gölcük escort görele escort görükle escort göynük escort gümbet escort gümüşhane escort güngören escort güroymak escort gürsu escort hakkari escort haliliye escort hatay escort haymana escort horasan escort iğdır escort ilgaz escort i̇lkadım escort i̇negöl escort i̇skenderun escort isparta escort i̇stanbul escort i̇zmir escort i̇zmit escort i̇znik escort kadirli escort kadıköy escort kağıthane escort kağızman escort kahta escort kaman escort kangal escort kapaklı escort karabük escort karacabey escort karahayıt escort karaköprü escort karaman escort karatay escort karesi escort kars escort karşıyaka escort kartal escort kaş escort kastamonu escort kaynaşlı escort kayseri escort keçiören escort kemer escort kepez escort keşan escort keskin escort kestel escort kilis escort kırıkhan escort kırıkkale escort kırkağaç escort kırklareli escort kırşehir escort kızıltepe escort kocaeli escort kocasinan escort konak escort konya escort konyaaltı escort körfez escort korkuteli escort köyceğiz escort kozan escort kumluca escort kumru escort kuşadası escort kütahya escort lara escort lüleburgaz escort malatya escort malazgirt escort malkara escort maltepe escort mamak escort manavgat escort manisa escort maraş escort mardin escort marmaris escort melikgazi escort menemen escort menteşe escort meram escort mersin escort merzifon escort mezitli escort milas escort mucur escort mudanya escort mudurnu escort muğla escort muratpaşa escort muş escort mut escort nazilli escort nevşehir escort niğde escort niksar escort nilüfer escort nizip escort nurdağı escort ödemiş escort of escort oltu escort onikişubat escort ordu escort orhangazi escort ortahisar escort ortaköy escort osmancık escort osmangazi escort osmaniye escort palandöken escort pamukkale escort pamukova escort patnos escort payas escort pazar escort pazarcık escort pendik escort polatlı escort rize escort safranbolu escort şahinbey escort sakarya escort salihli escort samandağ escort samsun escort sandıklı escort şanlıurfa escort sapanca escort sarıçam escort sarıkamış escort sarıyer escort şarkışla escort şehitkamil escort selçuklu escort selim escort serdivan escort serik escort seyhan escort siirt escort silifke escort simav escort sincan escort sinop escort şişli escort sivas escort siverek escort şırnak escort söğüt escort söke escort soma escort sultangazi escort suluova escort sungurlu escort sur escort suruç escort suşehri escort susurluk escort talas escort tarsus escort taşova escort tavşanlı escort tekirdağ escort terme escort tire escort tirebolu escort tokat escort torbalı escort toroslar escort trabzon escort turgutlu escort turhal escort türkoğlu escort tuzla escort ulus escort ümraniye escort ünye escort ürgüp escort urla escort uşak escort üsküdar escort üzümlü escort van escort varto escort viranşehir escort yahşihan escort yahyalı escort yakutiye escort yalova escort yatağan escort yenişehir escort yeşilyurt escort yıldırım escort yıldızeli escort yomra escort yozgat escort yunusemre escort yüreğir escort zara escort zeytinburnu escort zile escort zonguldak escort mersin escort fethiye escort