Thanks, Zhu.

That's a solution, but expose a initialize method to the client exe is not
so clean
an not so smart.
But if there isn't another solution, that will make it. :(

But I think the log4cxx is likely have some api for the user to query the
intialize status.

2009/4/22 Lijuan Zhu <zhu.lij...@gmail.com>

> Your project should have an entry point, like some Initialize method, if
> you initalize the log4cxx there, the log4cxx should be initialized for all
> other dlls.
>
> HTH,
> Lijuan
>
>
> On Wed, Apr 22, 2009 at 10:18 AM, yaohua xiao <bentry...@gmail.com> wrote:
>
>> Renny, Thanks for your replay!
>>
>> I already have a singleton class called "log4cxx_LogManager" to manage
>> log4cxx
>> in all the dlls.
>>
>> But I found that every dll will have a copy of that singleton class,
>> so the singleton manager "log4cxx_LogManager" is not single in the
>> mutiple dll enviromnents.If let the log4cxx_LogManager do the log4cxx
>> initialized stuff,
>> will initialize more than one times.
>>
>> Because log4cxx is compiled into a dll, it has only one copy in runtime.
>> So I want my log4cxx_LogManager query if log4cxx is initialzed first, if
>> not, initialize it.
>> otherwise, use the logger directly.
>>
>> If log4cxx.dll has some initialize flag or api, the problem will simply
>> solve.
>>
>> 2009/4/22 <renny.ko...@rubixinfotech.com>
>>
>>>
>>> Why don't you simply create a singleton instance of a class that will
>>> "manage" log4cxx for you?
>>>
>>> Then you can just query the singleton to see if it is initialized or
>>> not... or even just call the "init()" method of the singleton in all your
>>> DLL's... so the init will only happen once.
>>>
>>> Renny Koshy
>>> President & CEO
>>>
>>> --------------------------------------------
>>> Rubix Information Technologies, Inc.
>>> www.rubixinfotech.com
>>>
>>>
>>> Hi all,
>>>
>>> I am new to log4cxx and have a mutiple dll project to use log4cxx for
>>> some logging task.
>>> My project has 3 dll modules: a.dll, b.dll, c.dll , all dlls need
>>> logging.
>>>
>>> log4cxx needs some initialize code such like
>>> BasicConfigurator::configure()
>>> , load properties files, to prepare the logger. Because i use import lib
>>> to load the dlls,
>>> i don't know which dll will load first.
>>>
>>> So I want to determine if log4cxx is initialized when I call log4cxx in
>>> each dll.
>>> Is there any api can tell user is log4cxx initialized?
>>>
>>> Thanks.
>>>
>>
>>
>

Reply via email to