Как мне прочитать MSDN и подать заявку?

Итак, я хочу перестать задавать много вопросов о том, как выполнять большинство программных задач, потому что на большинство моих вопросов даются ответы, в которых написано «Читать MSDN». Вот. Дело в том, что я понятия не имею, как читать его или большинство языков программирования. Например, давайте возьмем функцию FtpCreateDirectory на MSDN (которую вы можете найти Вот)

Теперь представьте, что я только что изучил эту функцию, и я хочу попробовать ее. Как мне это прочитать, как мне взять те функции / команды, которые мне показывают. Как мне это напечатать? Этот реалт не помогает

BOOL FtpCreateDirectory(
_In_  HINTERNET hConnect,
_In_  LPCTSTR lpszDirectory
);

Спасибо!

0

Решение

Я сам этим не пользовался, но давайте рассмотрим и приведем пример:

HINTERNET hinternet = InternetConnect(...); //assume hinternet is valid

if (!FtpCreateDirectory(hinternet, "C:\\example")) {
std::cerr << "Error creating FTP directory. Code: " << GetLastError();
}

Шаг за шагом:

  • Во-первых, мы получаем HINTERNET справиться. Как? Ну, документы говорят об этом параметре:

Дескриптор, возвращенный предыдущим вызовом InternetConnect, используя INTERNET_SERVICE_FTP.

Вот почему я позвонил InternetConnect в примере.

  • Далее мы рассмотрим второй параметр. Глядя на Windows Data Types статья, вы можете увидеть, что требуется либо CONST WCHAR * или же CONST CHAR *в зависимости от того UNICODE определено. Для простоты я действовал так, как будто это не так, хотя вы можете использовать TEXT макрос, чтобы сделать строку буквальным широким или узким в зависимости от UNICODE,

Указатель на завершающуюся нулем строку, которая содержит имя каталога, который будет создан. Это может быть либо полный путь, либо имя относительно текущего каталога.

Как мы видим, это просто путь, поэтому я прошел путь примера. Это всего лишь пример, но имейте в виду, что в разделе «Примечания» говорится об этом параметре.

  • Теперь мы проверим возвращаемое значение:

Возвращает ИСТИНА в случае успеха или ЛОЖЬ в противном случае. Чтобы получить конкретное сообщение об ошибке, вызовите GetLastError. (больше не показано)

Поэтому мы заключаем вызов в оператор if, чтобы поймать ошибку, которую мы можем получить для использования кода GetLastError, Важно использовать технику обработки ошибок, описанную в статье каждой функции. Многие из них говорят, что при ошибке вы можете использовать GetLastError, но некоторые не поддерживают GetLastError использование, а некоторые поддерживают различные типы функций поиска ошибок, поэтому обязательно следуйте инструкциям для каждой функции в отдельности.

Кроме этого, _In_ означает, что параметр входит и после него бесполезен. Это противоречит, среди прочего, _Out_, это означает, что вы передадите в выделенную память, и функция запишет в нее, так что вы можете использовать ее после вызова функции со значением, которое записывает функция.

1

Другие решения

в части ссылки MSDN есть базовое предположение, что вы понимаете контекст для набора API.

Если программирование на win32 c (++) — это то, что вам нужно, вам нужно прочитать вступление о программировании Windows / win32. Непонятно, что вас интересует, вы пытаетесь написать настольные приложения, серверы, драйверы, ….

В некоторых случаях можно начать с классических книг, таких как окна программирования Чарльза Петцольда. В MSDN также есть много вводного уровня (google «запусти программирование на win32»)

0

По вопросам рекламы [email protected]