支持导出默认配置文件

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;
// 配置文件内容或路径可以为NULL
// 配置文件内容或路径可以为NULL,如果该文件不存在,那么将导出默认配置至该文件
const char *ini;
// ssl证书是内容还是路径
@ -78,20 +78,20 @@ API_EXPORT void API_CALL mk_stop_all_server();
/**
* 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( // 线程数
int thread_num,
// 日志级别,支持0~4
API_EXPORT void API_CALL mk_env_init1( int thread_num,
int log_level,
// 配置文件是内容还是路径
int ini_is_path,
// 配置文件内容或路径可以为NULL
const char *ini,
// ssl证书是内容还是路径
int ssl_is_path,
// ssl证书内容或路径可以为NULL
const char *ssl,
// 证书密码可以为NULL
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_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 {
mINI::Instance().parse(ini);
}

View File

@ -25,14 +25,17 @@
*/
#include <csignal>
#include <string>
#include "mediakit.h"
#ifdef _WIN32
#include "windows.h"
#else
#include "unistd.h"
#endif
using namespace std;
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_rtsp_server_start(554,false);
mk_rtmp_server_start(1935,false);