Форум программистов, компьютерный форум, киберфорум
Комментарии
Войти
Регистрация
Восстановить пароль
Карта форума Блоги Сообщество Поиск Заказать работу  
  1. Старый комментарий
    Аватар для Avazart
    Как блокировать\отключить рекламу в Skype?
    Недавно задолбило окно с рекламой, накатал код на С++ простой программой которая после запуска "тупо" ищет окно скайпа в котором реклама и скрывает его (на его месте просто остается пустое место заполненное белым фоном).

    Код програграммы
    C++
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    
    #include <iostream>
    #include <string>
    #include <windows.h>
     
    struct Data
    {
         std::wstring className;
         std::wstring windowText;
         HWND   hWnd;
    };
     
    bool CALLBACK EnumWindowsProc(HWND currentHwnd, LPARAM data_ref)
    {
        const int size= MAX_PATH;
        wchar_t buffer[size]={0};
        GetClassNameW(currentHwnd,buffer, size);
        std::wstring currentClassName= buffer;
        GetWindowTextW(currentHwnd,buffer,size);
        std::wstring currentWindowText= buffer;
     
        Data* data= (Data*)data_ref;
     
        bool cn= data->className.empty()  || currentClassName == data->className;
        bool wt= data->windowText.empty() || currentWindowText== data->windowText;
     
        if(cn && wt)
        {
            data->hWnd= currentHwnd;
            return false;
        }
     
        return true;
    }
     
    HWND findWindow(const std::wstring& parentClassName,
                    const std::wstring& className,
                    const std::wstring& text=std::wstring(L""))
    {
        HWND hWindow= FindWindowW(parentClassName.c_str(),0);
        if(!hWindow)
             return 0;
     
        Data data= { className, text, 0 };
        EnumChildWindows(hWindow,
                                         (WNDENUMPROC)EnumWindowsProc,
                                         (LPARAM)&data);
        return data.hWnd;
    }
     
    int main()
    {
        HWND hChatBanner= findWindow(L"tSkMainForm", L"TChatBanner");
        ShowWindow(hChatBanner, SW_HIDE);
        return 0;
    }


    Если кому интересно могу скинуть скомпиленный экзешник.
    Запись от Avazart размещена 23.11.2015 в 23:54 Avazart вне форума
    Обновил(-а) Avazart 24.11.2015 в 00:02
  2. Старый комментарий
    Как блокировать\отключить рекламу в Skype?
    Просто ставите старую версию где ее нет…
    Запись от Excalibur921 размещена 18.11.2015 в 15:21 Excalibur921 вне форума
  3. Старый комментарий
    Аватар для leo7
    Как блокировать\отключить рекламу в Skype?
    реальная вещь. А то в новой версии Скйп вообще убрал кнопку с крыжиком, где "извещения и сообщения" ...от Майкрасофта заразились...
    Запись от leo7 размещена 22.04.2015 в 16:22 leo7 вне форума
  4. Старый комментарий
    Запись от raxp размещена 21.04.2013 в 15:26 raxp вне форума
  5. Старый комментарий
    Как блокировать\отключить рекламу в Skype?
    Спасибо, рекламы действительно нет
    Запись от Ramoncheg размещена 20.04.2013 в 14:43 Ramoncheg вне форума
  6. Старый комментарий
    Аватар для Avazart
    Авторизация на сайте vk.com в C++ Builder XE
    1.
    C++
    1
    2
    3
    4
    
       IdHTTP->AllowCookies     = false;
       // Настраиваем автоматический переход на перенаправляемую страницу.
       IdHTTP->HandleRedirects  = false;
        // Делаем запрос к vk.com, передаем логин и пароль.
    Может наоборот ?
    C++
    1
    2
    
    IdHTTP->AllowCookies     =  true; // Позволить сохранять кукисы
    IdHTTP->HandleRedirects  = true; // Автоматически переходит по перенаправляемым страницам ...
    2.
    C++
    1
    
    const std::string __fastcall htmlParservremixSID(const std::string cmd)
    Принимает std::string работающий с char в то время как передаваться может в коде wchar_t* возврашаемый String через метод с_str() при дефолтовых настройках Builder-а
    C++
    1
    
    remixsid = htmlParservremixSID(  response.c_str()   ).c_str();
    3.
    C++
    1
    2
    3
    4
    
    // Ловим ответ "HTTP 302"
            if ( IdHTTP->ResponseCode == 302 )
            {
    //...
    Лучше ловить через исколючения.

    4.
    C++
    1
    2
    3
    4
    5
    
     switch(e.ErrorCode)
            {
                case 200: return false; break;
                // ...
            }
    Зачем здесь break ?

    5. А если по регулярке не будет нечего найдено ?
    C++
    1
    2
    3
    4
    5
    6
    
    const std::string __fastcall htmlParservremixSID(const std::string cmd)
    {
        boost::smatch result;
        if(boost::regex_search(cmd, result, pvremixSID))
             return std::string(result[1]);
    }
    6.
    Непонятно почему регулярки объявлены глобально ?
    И почему ф-ции возвращают const std::string ?
    Запись от Avazart размещена 25.08.2012 в 03:41 Avazart вне форума
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru