支持导出默认配置文件

This commit is contained in:
xiongziliang 2019-12-23 15:31:35 +08:00
parent c72dd5b4c5
commit 756d10aa55
3 changed files with 19 additions and 11 deletions

View File

@ -54,7 +54,7 @@ typedef struct {
// 配置文件是内容还是路径 // 配置文件是内容还是路径
int ini_is_path; int ini_is_path;
// 配置文件内容或路径可以为NULL // 配置文件内容或路径可以为NULL,如果该文件不存在,那么将导出默认配置至该文件
const char *ini; const char *ini;
// ssl证书是内容还是路径 // ssl证书是内容还是路径
@ -78,20 +78,20 @@ API_EXPORT void API_CALL mk_stop_all_server();
/** /**
* mk_env_init便 * mk_env_init便
* @param thread_num 线
* @param log_level ,0~4
* @param ini_is_path
* @param ini NULL,
* @param ssl_is_path ssl证书是内容还是路径
* @param ssl ssl证书内容或路径NULL
* @param ssl_pwd NULL
*/ */
API_EXPORT void API_CALL mk_env_init1( // 线程数 API_EXPORT void API_CALL mk_env_init1( int thread_num,
int thread_num,
// 日志级别,支持0~4
int log_level, int log_level,
// 配置文件是内容还是路径
int ini_is_path, int ini_is_path,
// 配置文件内容或路径可以为NULL
const char *ini, const char *ini,
// ssl证书是内容还是路径
int ssl_is_path, int ssl_is_path,
// ssl证书内容或路径可以为NULL
const char *ssl, const char *ssl,
// 证书密码可以为NULL
const char *ssl_pwd); const char *ssl_pwd);
/** /**

View File

@ -88,7 +88,12 @@ API_EXPORT void API_CALL mk_env_init1( int thread_num,
if (ini && ini[0]) { if (ini && ini[0]) {
//设置配置文件 //设置配置文件
if (ini_is_path) { if (ini_is_path) {
mINI::Instance().parseFile(ini); try{
mINI::Instance().parseFile(ini);
}catch (std::exception &ex) {
InfoL << "dump ini file to:" << ini;
mINI::Instance().dumpFile(ini);
}
} else { } else {
mINI::Instance().parse(ini); mINI::Instance().parse(ini);
} }

View File

@ -25,14 +25,17 @@
*/ */
#include <csignal> #include <csignal>
#include <string>
#include "mediakit.h" #include "mediakit.h"
#ifdef _WIN32 #ifdef _WIN32
#include "windows.h" #include "windows.h"
#else #else
#include "unistd.h" #include "unistd.h"
#endif #endif
using namespace std;
int main(int argc,char *argv[]){ int main(int argc,char *argv[]){
mk_env_init1(0,0,0, nullptr,0, nullptr, nullptr); mk_env_init1(0,0,1, (string(argv[0]) + ".ini").data(),0, nullptr, nullptr);
mk_http_server_start(80,false); mk_http_server_start(80,false);
mk_rtsp_server_start(554,false); mk_rtsp_server_start(554,false);
mk_rtmp_server_start(1935,false); mk_rtmp_server_start(1935,false);