Как установить разрешения для IUSR на mysql, чтобы мой сценарий C ++ cgi не возвращал ошибку 502.2? - PullRequest
0 голосов
/ 12 октября 2019

У меня есть какой-то устаревший код, который я пытаюсь обновить. Так что это mysql 8.0 на Windows 10 64 бит. Я использую Visual Studio 17 CE для компиляции своих проектов. Я использую заголовки из папок "C: \ Program Files \ MySQL \ Connector C ++ 8.0 \ include \"; "C: \ Program Files \ MySQL \ MySQL Server 8.0 \ include \", и я добавил зависимости для mysqlcppconn.lib;Библиотеки libmysql.lib и добавлены дополнительные каталоги. Код будет скомпилирован, но во время выполнения он печатает, а затем завершает работу, если я включаю любой вызов функции mysql, такой как mysql_get_client_info ();Даже если функция не вызывается, она возвращает ошибку 502.2 в мой браузер. Простое включение этой функции в код приводит к ее выходу. Затем, если я запускаю программу из командной строки, она выводит на стандартный вывод 6.1.11. Как и ожидалось. Итак, я чувствую, что мне нужно установить разрешения для моего клиента IUSR для доступа к драйверам mysql? Но как мне это сделать? Спасибо за любые идеи?

#include "pch.h"
#include "mysql.h"

void CheckMyDB(MYSQL* mysql) {
    fprintf(stdout, "%s", mysql_get_client_info());
}

Я ожидаю, что он вернет веб-страницу, созданную моим скриптом. Но вместо этого, когда я включаю функцию для получения информации о клиенте, она неожиданно завершает работу, вызывая ошибку 502.2. Поскольку он запускается как консольное приложение, я подозреваю, что разрешения для учетной записи IUSR разрешены, а драйвер mysql отклоняет запрос, вызывая преждевременный выход. Но я не знаю, на какие файлы мне нужно установить права доступа? Просто длл? А какие? Или я что-то упускаю? Заранее спасибо.

...