Is it better to create satellite dll's before or after programming a MFC application

213 Views Asked by At

I am halfway through the development of a MFC Form application and I know I will have to publish it in multiple languages. I plan on using satellite DLL's in order to achieve this goal. I am using Visual Studio 2012 by the way.

I have done some reading but I'm still quite a neophyte on the subject. In order to create a satellite DLL containing a Form in an other language, I have to copy the Form in the resource file of a new DLL project, give a specific name to the DLL, add the /NOENTRY option to the linker and then translate the Form.

The thing is, the Form may be subject to change in a near future (move/delete/add controls). If I create the satellite DLL right now, I fear I will have to do the same modifications in every single DLL if I need to alter the structure of a Form.

My question is: Should I wait until I have completed my application and then create the satellite DLL's or is there a mechanism in VS or else where that will allow me to make the modifications of my DLL in a single place?

2

There are 2 best solutions below

0
On BEST ANSWER

You didn't mention if you are using .NET - is your C++ application managed? I would suggest you to write your application first, but design it such that resource-only/satellite DLLs can be easily plugged in later.

0
On

I think I'd do a complete application in two languages, then translate into others.

As for why to do two first rather than just one: because this way, you're pretty much forced to keep the structure amenable to being translated into more. If you only do one the first time, no matter how careful you think you're being, it seems to be almost inevitable that you miss at least a few things, so you end up going back and rewriting to accommodate more languages. You'll probably do a little of that anyway, but doing two the first time reduces it quite a bit.