1. C++ / Говнокод #21945

    −43

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    #include <windows.h>
    #include <stdio.h>
    
    HANDLE hSlot;
    LPTSTR Slot = TEXT("\\\\.\\mailslot\\sample_mailslot");
    
    BOOL WINAPI MakeSlot(LPTSTR lpszSlotName) 
    { 
        hSlot = CreateMailslot(lpszSlotName, 
            0,                             // no maximum message size 
            MAILSLOT_WAIT_FOREVER,         // no time-out for operations 
            (LPSECURITY_ATTRIBUTES) NULL); // default security
     
        if (hSlot == INVALID_HANDLE_VALUE) 
        { 
            printf("CreateMailslot failed with %d\n", GetLastError());
            return FALSE; 
        } 
        else printf("Mailslot created successfully.\n"); 
        return TRUE; 
    }
    
    void main()
    { 
       MakeSlot(Slot);
    }

    @LPTSTR Slot = TEXT("\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \\\\\\\\.\\mailslot\\sample_mailslot");

    Больше слэшэй богу слэшэй!..

    "С++" - убожество.

    Запостил: rotretS, 05 Января 2017

    Комментарии (23) RSS

    • показать все, что скрытоВы таки путаете, Windows -- убожество. WinAPI -- убожество^2.
      Ответить
      • Это Вы путаете - палец с хуем.
        Гостю не ведомо, что в сиподобных - слэш экранируется, гость прилетел с Корусанта.
        Ответить
        • Ничего я не путаю, в никсах экранировать не пришлось бы.
          Ответить
          • в никсах какой-то другой си?

            или ты о том что в никсах нормальный слеш в отличии от винды?
            Ответить
    • --Быстро назовите самый главный минус крестов
      --Там надо экранировать слеш в литералах.

      Кстати, это не С++. Это чистый спи си
      Ответить
      • С чего бы это на MSDN стали публиковать примеры на си?
        @https://msdn.microsoft.com/en-us/library/windows/desktop/aa365160%28v=vs.85%29.aspx
        Ответить
        • С того что код на С может быть скомпилирован как код на C++ в некоторых случаях, и потому они не делают различий.

          По сути же этот код попадает под стандарт ANSI C.
          Ответить
          • Мне кажется, или ты придираешься?
            Зачем платить больше, если не видно разницы?
            Ответить
            • Где тут C++, Стертор?

              Весь win32API это чистый си, хотя у MS конечно дофига и С++ фреймворков
              Ответить
    • Специально для тебя уже 5 с половиной лет как завезли raw strings.
      Ответить
      • ну \\\\.\\mailslot\\sample_mailslot превратится в \\.\mailslot\sample_mailslot и все равно стертор будет не доволен
        Ответить
    • http://govnokod.ru/19394
      Ответить
    • ну и напиши тогда R"(\\.\mailslot\sample_mailslot)"
      Ответить

    Добавить комментарий