- 1
- 2
- 3
- 4
- 5
#include "server.h"
const server::CServer s(8085, 1111);
int main() {return 0;}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+125
#include "server.h"
const server::CServer s(8085, 1111);
int main() {return 0;}
http://habrahabr.ru/post/213301/
От автора http://govnokod.ru/14526
>И еще на мой взгляд, функция main() — атавизм, доставшийся программистам от СИ. В С++ она лишняя. Но компиляторы пока этого не знают к сожалению.
>Но я решил «наказать» эту ненужную функцию, отобрав у нее возможность что-либо сделать — изменил файл serv.cpp следующим образом
Vasiliy 21.02.2014 12:52 # −1
Windows в принципе ужасен, но кого это ебет?.
Konardo 21.02.2014 12:58 # −11
guest6 26.03.2024 22:21 # 0
guest6 26.03.2024 22:30 # 0
bormand 21.02.2014 12:55 # +1
помогут избежать ошибки «Address already in use» при аварийном перезапуске сервера — жестоко ошибаются. Не помогут.
Почему?
Konardo 21.02.2014 12:58 # −11
BOKCEJIbHblu_nemyx 28.03.2019 17:08 # 0
guest6 26.03.2024 20:14 # 0
guest6 26.03.2024 20:19 # 0
> при аварийном перезапуске сервера
guest6 26.03.2024 20:25 # 0
перезапуск сервера --- задача не атомарная, так-то
Пидоттеринг кажется решает такое: там порт слушает systemd, и пепредает его прцоессу. Системд порт не теряет.
Вот пидоттеринг молодец!
Ой, я перепутал, `inetd` умел это делать, когда поцтеринг еще у папке в яйцах сидел, и в линукс не срал. Или я не прав?
guest6 26.03.2024 20:52 # 0
Я номера портов в конфигах зашиваю и знаю что на каком порту поднято.
Исключение — тесты. Потому что тестов много может параллельно идти.
guest6 26.03.2024 21:10 # 0
Чувак кильнул твой процесс, и пока он валяется -- запустил другой на том же самом порту.
Менять порт динамически это пидорство, конечно. RPC в винде так делает (rpc mapper) и еще некоторые другие ОЧЕ СТАРЫЕ питухи, за что их ненавидят админки, и настраиватели файрволлов: тридцать пять лет назад это считалось ок.
guest6 26.03.2024 21:14 # 0
Ну это пидорство, конечно. Потому на моих серверах такой хуйни нет.
guest6 26.03.2024 21:22 # 0
Я стараюсь левым хакерам всё таки терминальный доступ на свои продакшен сервера не давать
guest6 26.03.2024 21:26 # 0
С одной стороны у них "By default, RPC uses ports in the ephemeral port range (1024-5000)", а с другой http.sys в ядре слушает порт 443 и шарит подключение между процессами.
Ну не говноеёбы-ли?
guest6 26.03.2024 22:31 # 0
Konardo 21.02.2014 12:58 # −11
Konardo 21.02.2014 13:00 # −11
BOKCEJIbHblu_nemyx 28.03.2019 17:07 # 0
PACTPOBblu_nemyx 28.03.2019 17:11 # 0
Линкуешь с другой библиотекой, и у тебя вместо main() при старте вызовется что-нибудь ещё.
guest8 28.03.2019 17:12 # −999
BOKCEJIbHblu_nemyx 28.03.2019 17:18 # 0
guest6 26.03.2024 20:46 # 0
gost 28.03.2019 17:47 # +1
http://www.hexblog.com/?p=9
PACTPOBblu_nemyx 28.03.2019 17:55 # 0
guest8 28.03.2019 17:57 # −999
PACTPOBblu_nemyx 28.03.2019 18:01 # 0
Есть «multitasker» в «DR-DOS», но он изолирует программы друг от друга, а запуск всегда происходит с точки входа.
По идее треды должны существовать в «Concurrent DOS» и в «European MS-DOS», но эти системы не получили распространения.
cmepmop 28.03.2019 18:15 # 0
guest8 28.03.2019 18:31 # −999
cmepmop 28.03.2019 19:45 # 0
Передай тем, кто тебя плюсует, что возможно они даже в глаза не видели VB 1.0, а я видел. Я кодил под дос (разумеется, лишь в целях расширения кругозора, ибо бейсик мне нахуй не всрался). Там УЖЕ пахло зачатками винды, но как говорится, "хочу да не могу".
guest8 28.03.2019 19:51 # −999
PACTPOBblu_nemyx 28.03.2019 19:55 # 0
guest8 28.03.2019 19:57 # −999
PACTPOBblu_nemyx 28.03.2019 20:01 # 0
И в MDI (multiple document interface) в «Windows» ты также не можешь пользоваться дочерними окнами приложения, пока не закроешь модальное. Все окна в «VB for DOS» и в «Turbo Vision» –— это по сути MDI: окошек много, а приложение одно.
Если нужно немодальное окно, то нужно отказаться от MessageBox и лепить своё окошко. Так задумано.
guest8 28.03.2019 20:06 # −999
PACTPOBblu_nemyx 28.03.2019 20:10 # 0
А то погромисты обколются своей марихуаной и открывают модальные окна на каждый чих, а у меня из-за них комп висит.
PACTPOBblu_nemyx 28.03.2019 20:26 # 0
cmepmop 28.03.2019 22:28 # 0
p.s. виндявый мессагебокс далеко не модальный (если намеренно не поебаться с флагами). Модальный он только в досе, ибо там псевдоокна и нет ни з-порядка.
guest8 28.03.2019 22:30 # −999
cmepmop 28.03.2019 22:36 # 0
PACTPOBblu_nemyx 28.03.2019 22:52 # 0
Я уже выше написа́л: «VB for DOS» и «Turbo Vision» создают не графическую операционную систему a la Windows, а одно приложение с подобием MDI (multiple document interface), поэтому MessageBox блокирует взаимодействие пользователя со всеми окнами. Так задумано.
Если не хочешь блокировать, открывай не MessageBox, а специальное окно.
cmepmop 28.03.2019 22:57 # 0
Я вёл речь токмо о visual basic for dos. О том, как убого выглядело псевдоокно созданное msgbox.
кстати. судя по упоминанию большого количества ячневой крупы в моей черепной коробке, гуест8-у невдомёк, что msgbox - обычное виндоклассное окно, которое может не иметь владельца.
zhigolo 28.03.2019 23:13 # 0
cmepmop 28.03.2019 23:47 # 0
guest8 28.03.2019 23:15 # −999
PACTPOBblu_nemyx 29.03.2019 00:15 # 0
Точно не помню, как было у «VB for DOS» (я его буквально пару раз запускал), но у «Турбовижен» окна были разные, их можно было двигать независимо, можно было назначать владельца (чтобы при закрытии этого окна захлопывались дочерние), можно было создавать модальные диалоги и немодальные.
guest8 29.03.2019 02:40 # −999
PACTPOBblu_nemyx 29.03.2019 01:14 # 0
Напоминает такую цепочку: «Я не смог поставить Django на Windows => прыщи — говно».
Почти готовый макрос: «Я не смог %SUBJ% в %OSNAME% => %другой_SUBJ% — говно».
guest8 29.03.2019 02:02 # −999
cmepmop 29.03.2019 14:38 # 0
guest8 29.03.2019 15:05 # −999
_PHP_ 29.03.2019 15:29 # 0
guest8 29.03.2019 21:23 # −999
gost 28.03.2019 22:58 # −2
В винде он тоже модальный, просто ты первым параметром NULL передаёшь, а надо — HWND твоего окна. Кури MSDN: https://docs.microsoft.com/en-us/windows/desktop/api/winuser/nf-winuser-messageboxw .
cmepmop 28.03.2019 23:01 # 0
Кэп?
gost 28.03.2019 23:16 # 0
zhigolo 28.03.2019 23:24 # +4
Goh 28.03.2019 23:29 # −101
gost 28.03.2019 23:33 # −3
С флагами ебаться не надо; модальный он не только в досе.
cmepmop 28.03.2019 23:39 # 0
Будет ли он модальным, если приложение не имеет главного окна?
С флагами не ебёмся - сам сказал. Последний параметр ==0.
gost 28.03.2019 23:51 # 0
Если приложение не имеет главного окна — какую именно работу с приложением должно заблокировать модальное?
Можно ебануться, в принципе:
До тех пор, пока диалоговое не будет закрыто, ввести в появившееся чёрное окно ничего будет нельзя, работа пользователя с родительским приложением успешно заблокирована, в флагах — 0, да даже родительское окно не задано.
cmepmop 29.03.2019 00:01 # 0
Я лишь хотел показать, что утверждение "messagebox - модальное окно" не всегда верно.
zhigolo 29.03.2019 00:02 # 0
gost 29.03.2019 00:08 # 0
guest8 29.03.2019 02:41 # −999
cmepmop 29.03.2019 10:51 # 0
cmepmop 29.03.2019 20:47 # 0
guest8 29.03.2019 20:51 # −999
cmepmop 29.03.2019 20:54 # 0
guest8 29.03.2019 20:55 # −999
cmepmop 29.03.2019 21:00 # 0
@Если нет окна -- некому и событие посылать.
Я просто оставлю это здесь.
BOOL GetMessage(
LPMSG lpMsg,
HWND hWnd,
UINT wMsgFilterMin,
UINT wMsgFilterMax
);
Parameters
lpMsg
Type: LPMSG
A pointer to an MSG structure that receives message information from the thread's message queue.
hWnd
Type: HWND
A handle to the window whose messages are to be retrieved. The window must belong to the current thread.
If hWnd is NULL, GetMessage retrieves messages for any window that belongs to the current thread, and any messages on the current thread's message queue whose hwnd value is NULL (see the MSG structure). Therefore if hWnd is NULL, both window messages and thread messages are processed.
bormand 29.03.2019 21:02 # 0
Хех, там далеко не все сообщения видно. Некоторые системные бродкасты только в оконной процедуре ловятся... Т.е. они вообще из нихуя рождаются во время DispatchMessage(). Кругом костыли.
bormand 29.03.2019 21:05 # 0
Type: BOOL
If the function retrieves a message other than WM_QUIT, the return value is nonzero.
If the function retrieves the WM_QUIT message, the return value is zero.
If there is an error, the return value is -1.
guest8 29.03.2019 21:05 # −999
bormand 29.03.2019 21:06 # 0
NULL'у кинь.
guest8 29.03.2019 21:08 # −999
bormand 29.03.2019 21:10 # 0
PostMessage(NULL, ...) аля PostThreadMessage(GetCurrentThreadId(), ...).
guest8 29.03.2019 21:12 # −999
bormand 29.03.2019 21:13 # 0
Подставь айдишку треда.
guest8 29.03.2019 21:21 # −999
bormand 29.03.2019 21:31 # −1
А могут быть. А мог через GetWindowThreadProcessId() узнать. А мог по другим каналам получить от самого процесса...
Возможность передачи сообщения именно в message loop треда, а не окну есть. Ты же не будешь спорить с MSDN?
З.Ы. Нахуй это нужно - х.з. Скорее всего, тупо чтобы общаться со своими тредами, в которых уже крутится message loop.
guest8 29.03.2019 21:40 # −999
cmepmop 29.03.2019 22:18 # 0
guest8 29.03.2019 22:30 # −999
cmepmop 29.03.2019 22:43 # 0
guest8 29.03.2019 22:54 # −999
cmepmop 29.03.2019 22:59 # 0
guest8 29.03.2019 23:07 # −999
cmepmop 29.03.2019 23:13 # 0
guest8 29.03.2019 23:17 # −999
cmepmop 29.03.2019 23:19 # 0
Я уже не помню.
PACTPOBblu_nemyx 30.03.2019 00:13 # 0
_PHP_ 30.03.2019 00:18 # 0
PACTPOBblu_nemyx 30.03.2019 00:59 # 0
gost 30.03.2019 06:09 # 0
3oJIoTou_xyu 30.03.2019 06:34 # 0
BOKCEJIbHblu_nemyx 30.03.2019 15:39 # 0
PACTPOBblu_nemyx 30.03.2019 17:24 # 0
cmepmop 30.03.2019 11:20 # +3
cocunamp 30.03.2019 12:01 # +1
CBuHOKYP 27.09.2021 22:22 # 0
guest8 01.04.2019 17:11 # −999
PACTPOBblu_nemyx 30.03.2019 12:45 # 0
cocunamp 30.03.2019 19:16 # 0
cmepmop 31.03.2019 23:45 # 0
cocunamp 31.03.2019 23:48 # +3
PACTPOBblu_nemyx 01.04.2019 03:03 # 0
bormand 01.04.2019 07:47 # 0
PACTPOBblu_nemyx 01.04.2019 15:32 # 0
CBuHOKYP 27.09.2021 22:23 # 0
PACTPOBblu_nemyx 01.04.2019 15:36 # 0
CBuHOKYP 27.09.2021 22:24 # 0
А из ануса таким же макаром?
bormand 29.03.2019 20:54 # 0
Вот только некоторые события без окна хуй получишь... Вот и приходится создавать невидимые окна.
guest8 29.03.2019 20:56 # −999
guest8 28.03.2019 23:08 # −999
zhigolo 28.03.2019 23:09 # 0
http://govnokod.ru/14760#comment465725
cmepmop 28.03.2019 23:44 # 0
3oJloTou_nemyx 29.03.2019 01:56 # 0
Ты же делфист, почему двойное равно?
guest8 29.03.2019 02:39 # +1
cmepmop 29.03.2019 10:38 # +1
Если ты внимательно посмотришь справку, то поймёшь, что этот флаг идёт по умолчанию.
MB_APPLMODAL
0x00000000L
The user must respond to the message box before continuing work in the window identified by the hWnd parameter. However, the user can move to the windows of other threads and work in those windows.
Depending on the hierarchy of windows in the application, the user may be able to move to other windows within the thread. All child windows of the parent of the message box are automatically disabled, but pop-up windows are not.
если ты тупо укажешь ноль, это и будет апплмодал.
guest8 29.03.2019 11:42 # −999
zhigolo 29.03.2019 12:23 # −2
cmepmop 29.03.2019 12:29 # 0
guest8 29.03.2019 12:32 # −999
CnEPMOBOP 29.03.2019 12:37 # −101
cmepmop 29.03.2019 12:42 # 0
zhigolo 29.03.2019 12:35 # 0
Если у тебя ещё не выросла пипирка, это не значит, что так было и у других.
CnEPMOBOP 29.03.2019 12:38 # −102
cmepmop 29.03.2019 12:43 # 0
CBuHOKYP 27.09.2021 22:12 # 0
Increment_Excrement 28.03.2019 22:42 # 0
cmepmop 28.03.2019 22:45 # +1
3oJloTou_nemyx 28.03.2019 20:04 # 0
WGH 29.03.2019 13:05 # +3
_PHP_ 29.03.2019 13:11 # −1
cmepmop 29.03.2019 14:41 # 0
guest8 29.03.2019 15:05 # −999
j123123 27.09.2021 22:06 # 0
guest8 29.03.2019 23:18 # 0
PACTPOBblu_nemyx 30.03.2019 01:01 # 0
Ну не знаю, может быть, какой-нибудь цыган откликнется.
guest8 30.03.2019 01:08 # −1
PACTPOBblu_nemyx 30.03.2019 02:18 # 0
guest6 27.09.2021 22:10 # 0
CEHT9I6PbCKuu_nemyx 27.09.2021 22:13 # 0
guest6 27.09.2021 22:17 # +1
CEHT9I6PbCKuu_nemyx 27.09.2021 22:20 # 0
guest6 27.09.2021 22:24 # +1
Португальцы едят паштель и любуются на азулежу (то ли ж, то ли ш тут) из города Оливейра-ди-Аземейш
CEHT9I6PbCKuu_nemyx 27.09.2021 22:22 # 0
https://youtu.be/hfeCx_CYLuU
guest6 27.09.2021 22:25 # 0
иногда это чувствуется)
CEHT9I6PbCKuu_nemyx 27.09.2021 22:31 # 0
В интернете можно найти скан «молдавско-румынского словаря» (автор Василе Стати). Там автор нарочно собрал в молдавской колонке славянизмы, а в румынской — романизмы. Например, kuzneţ — fierar.
guest6 27.09.2021 22:34 # 0
Кстати, в республике Молдова официальный язык румынский
Угадай, где молдавский
CEHT9I6PbCKuu_nemyx 27.09.2021 22:35 # 0
guest6 27.09.2021 22:38 # 0
CEHT9I6PbCKuu_nemyx 27.09.2021 22:45 # 0
Молдавский в 1930-х перевели «обратно» на кириллицу. Это была не та румынская кириллица, а уже новая, без ятей.
В «Google Books» есть реальные примеры книг на дореволюционной кириллице.
guest6 27.09.2021 22:48 # +1
Потому у некоторых народов в итоге по два алфавита
CEHT9I6PbCKuu_nemyx 27.09.2021 22:55 # 0
У Ленина хватило смелости сказать Луначарскому, что русский переводить на латиницу не нужно.
А латинизация других народов тогда прокатила, потому что они были либо вообще бесписьменными, либо использовали арабское письмо, которое им подходило ещё хуже, чем латиница.
Армянский и грузинский не трогали, у них к этому моменту уже было удобное письмо.
Desktop 27.09.2021 23:21 # 0
то на латиницу, то на кириллицу
то русификация, то предпочтение национальным языкам
и это в стране, где за первые 75 лет было три с половиной руководителя
реально русское поле экспериментов
CEHT9I6PbCKuu_nemyx 28.09.2021 14:43 # 0
Сторонники латинизации считают, что латинский алфавит — самый универсальный. Посмотрим... Вот, например, как в «универсальном» алфавите обозначают звук «ш»:
• «sh» в английском;
• «ch» во французском (у англичан и у испанцев то же «ch» означает «ч», а у итальянцев — это просто «к», а буква «h» служит для разделения с гласной, чтобы не спутать с «c» в роли «ч», удобно, да?);
• «sch» в немецком;
• «sz» в польском (а вот «ш» мягкое поляки обозначают как «ś»);
• «s» в венгерском (а звук «с» венгры обозначают как «sz», то есть ровно наоборот по сравнению с польским);
• «š» в чешском;
• «ş» в турецком (ладно, будем считать это деталью реализации);
• «x» в баскском.
Вообще «x», «j» и «c» — самые невезучие буквы, потому что у них в разных языках разные значения.
Универсальный алфавит, да?
Desktop 28.09.2021 14:46 # 0
я бы сказал, что с латиницей упростилась бы унификация возможно
но какого-то особого смысла не вижу: не так далеко кириллица ушла от латиницы, чтобы для нас было проблемой воспринимать и то, и то
CEHT9I6PbCKuu_nemyx 28.09.2021 14:51 # 0
guest6 26.03.2024 17:36 # 0
Так что добавь в свой список "sj"
guest6 26.03.2024 18:24 # 0
слово "феррум" слышу я во втором слове.
У Трофима дворник-таджик на языке Хаяма материл февраль. А строитель-молдаванин ругается на языке Цицерона, лол
guest6 29.03.2024 19:41 # 0
Ломовая латынь молдаван.
CEHT9I6PbCKuu_nemyx 27.09.2021 22:34 # +2
Desktop 27.09.2021 23:21 # +2
CBuHOKYP 27.09.2021 22:28 # 0
guest6 26.03.2024 17:38 # 0
в C# стало можно писать без мейна, но там какие-то ебананаские ограничения, типа структуры нельзя объявлять после строчек кода (как в паскале и старых сях хахах)
guest6 26.03.2024 17:53 # 0
compiler returns an error (any error), the source file
gets deleted.
The compiler however, returns me to the "Prelude>"
cursor and still accepts commands
guest6 26.03.2024 18:18 # 0
guest6 26.03.2024 18:20 # 0
Но что значит "m_"? Долбоёб реально все поля предворяет буквой "m"? Чтобы не писать `this->`?
guest6 26.03.2024 18:28 # 0
guest6 26.03.2024 19:35 # 0
В джавке понятно - camelCase поля и переменные, PascalCase типы, НАОРУ_ТЕБЕ_В_УШИ константы и енамы. Вот по-настоящему хорошо в шарпе, где только PascalCase (в т.ч. для методов - надо вовремя сообразить, что ты смотришь на установку делегата, а не значения) и для остального camelCase
guest6 26.03.2024 19:44 # 0
guest6 26.03.2024 19:57 # 0
guest6 26.03.2024 20:13 # 0
А змея это пидорство кстати. Горизонтальное место стоит дорого. Змею придумали 50 лет назад, когда отличать заглавные от строчных было нельзя (капитель или как там оно называется) а сейчас нахуя проебывать место?
guest6 26.03.2024 19:33 # 0
Мудило. Есть ещё mb_
guest6 26.03.2024 19:44 # 0
guest6 26.03.2024 19:57 # 0
guest6 26.03.2024 20:06 # 0
Это удобно
guest6 27.03.2024 04:55 # 0
guest6 27.03.2024 10:43 # 0
3oJIoTou_xyu 27.03.2024 11:58 # 0
guest6 27.03.2024 12:23 # 0
https://www.youtube.com/watch?v=hSZas_VMLpw
guest6 27.03.2024 16:30 # 0
guest6 27.03.2024 16:42 # 0
guest6 26.03.2024 18:21 # 0
https://pbs.twimg.com/media/GJkwALZWEAAQ9ro?format=jpg&name=medium
guest6 27.03.2024 00:35 # 0
Joeri Aleksejevitsj Gagarin
guest6 27.03.2024 01:02 # 0
guest6 27.03.2024 02:05 # 0
guest6 27.03.2024 02:48 # 0
guest6 27.03.2024 02:52 # 0
guest6 27.03.2024 12:29 # 0
Аусвайсс хоть выдали?
https://cdn-images.the-express.com/img/dynamic/10/1200x675/152695.jpg
guest6 27.03.2024 13:04 # 0
guest6 27.03.2024 16:31 # 0