ACE 服务配置器(Service Configurator)

TimeService DLL:

VC6 dll工程属性设置 Setting->C/C++->Category(general)->preprocessor definitions:

WIN32,_DEBUG,_WINDOWS,_MBCS,_USRDLL,TIMESERVICE_EXPORTS,ACE_BUILD_SVC_DLL

-------------------------------------------------------TimeService .h------------------------------------------------------------------

#ifndef TIME_SERVICE_H
#define TIME_SERVICE_H

#include "ace/Service_Config.h"
#include "ace/ace.h"
#include "ace/OS.h"
#include "ace/Task.h"
#include "ace/Synch_T.h"
#include "ace/svc_export.h"

class ACE_Svc_Export TimeService: public ACE_Service_Object
{
 public:
  virtual int init(int argc, char *argv[]);
  virtual int fini(void);
  virtual int suspend(void);
  virtual int resume(void);


 private:

};
ACE_SVC_FACTORY_DECLARE(TimeService)
#endif

-------------------------------------------------------TimeService .cpp------------------------------------------------------------------

#include "TimeService.h"
#include "ace/Log_Msg.h"


int TimeService::init(int argc, char *argv[])
{
    printf("MyDynamicObj::init------/n");
    return 0;
}

int TimeService::fini(void)
{
 printf("TimeService::fini-----/n");
    return 0;
}

//Suspend the Time Service.
int TimeService::suspend(void)
{
 printf("TimeService::fini-----/n");
    return 0;
}

//Resume the Time Service.
int TimeService::resume(void)
{
 printf("TimeService::fini-----/n");
    return 0;
}

ACE_SVC_FACTORY_DEFINE(TimeService)

.................................................................................................................................................................................................

main.cpp

#include "ace/OS.h"
#include "ace/Service_Config.h"
#include "ace/Event_Handler.h"
#include <signal.h>

int ACE_TMAIN (int argc, ACE_TCHAR *argv[])
{
       ACE_Service_Config::open(argc, argv, ACE_DEFAULT_LOGGER_KEY, 0);
       ACE_Reactor::instance ()->run_reactor_event_loop();
       return 0;
}
..............................................................................................................................................................................................

svc.conf

dynamic TimeService Service_Object * TimeService:_make_TimeService() ""

Configurator是一种用于配置Vector的autosar工具的工具。它允许用户通过添加配置文件来更改或扩展生成的代码。用户可以在生成的模块配置文件的末尾添加用户配置文件的内容,以便个性化定制代码。然而,需要注意的是,用户配置文件可能会导致软件模块出现故障,因此必须小心使用。 对于CanTp模块,可以使用User Config File来进行配置。点击CanTp模块的User Config File,可以在Properties中找到有关该配置文件的简单介绍。该配置文件的路径是./Config/Test_Config/CanTp/CanTp.txt,表示在工程目录的Config文件夹下新建Test_Config文件夹,再在Test_Config文件夹下新建CanTp文件夹,并在CanTp文件夹中添加CanTp.txt文件。用户可以根据需要手动添加这些文件夹和文件。 另外,在Dcm模块的DcmDslServiceRequestSupplierNotification模块中,可以通过右击选择"create xxx container"来创建相应的容。 举例来说,如果需要在11服务中添加NRC22条件(车速小于3km/h)的检测,当车速大于3km/h时,ECU接收到11 01请求,则响应NRC22。可以在相应的配置文件中进行设置。<span class="em">1</span><span class="em">2</span><span class="em">3</span><span class="em">4</span> #### 引用[.reference_title] - *1* *2* [Davinci Configurator之User Config File配置功能](https://blog.csdn.net/weixin_42412049/article/details/123610085)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* *4* [[Davinci Configurator 配置] 实现功能寻址不响应、关闭抑制肯定响应、NRC否定响应](https://blog.csdn.net/fly_xiaocaibi88/article/details/126544389)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值