У меня есть игра TicTacToe, которая была создана в MFC с архитектурой документа / представления, и у меня есть сервер (стандартное консольное приложение) с winsockets. Где я должен инициализировать сокет в клиенте, чтобы соединить его с сервером? (Это должен быть точно winsock, без Csocket). Я знаю, как создавать winsockets, но я не знаю, ГДЕ я должен создавать их в архитектуре doc / view. (Единственное, что я знаю, это инициализировать «WSADATA wsaData» в «InitInstance»)
Это зависит от дизайна вашей программы. Если бы вы использовали всю архитектуру Document / View, вы бы имели обработчики File-> Open / File-> New / File-> Save документа. Таким образом, кажется правильным поместить код связи там.
Однако, если Document является просто «фиктивным» классом, который был создан мастером, но никогда не использовался со всем кодом, помещенным в View, тогда вы можете продолжать улучшать программу таким же образом. Поместите часть «соединение» в ваш OnInitialUpdate
метод, а disconnection
часть в обработчик WM_CLOSE.
Вероятно, хорошей идеей будет предоставить пользователю опцию «Подключиться» (либо через меню, либо через панель инструментов, либо и то, и другое). Затем поместите код там
Других решений пока нет …