-
Intercomunicating projects
Hi,
I have a huge project that I have to divide into three different projects
with three different executables. They have to share the same MDI form (Menu
as is now). How do I go about it?
Thanks in advance.
Benjamin
-
Re: Intercomunicating projects
I'm betting the easiest way would be to make them into DLL's. Then have the
MDIform call the AX objects.
--
~~~
C'Ya,
mrfelis
mrfelis@yahoo.NOSPAM.com
just remove the spam
Benjamin Bruce <bwanika@libero.it> wrote in message
news:39d9a1bf$1@news.devx.com...
>
> Hi,
> I have a huge project that I have to divide into three different projects
> with three different executables. They have to share the same MDI form
(Menu
> as is now). How do I go about it?
> Thanks in advance.
> Benjamin
-
Re: Intercomunicating projects
Benjamin -
Are you dividing your code into projects in order to prevent the use of too
much memory? If so, then I have been trying to do the same, with some success.
The main problem is identifying areas which are shared, and pulling then
out, since even if a small part of a DLL is used, then the whole lot is loaded
into memory.
Also, sadly, you cannot use forms appearing in DLLs with an MDI form in an
EXE (a serious downside IMHO). However, one workaround was suggested by Daniel
Appleman. Instead of MDI child forms, he creates OCXs containing UserControls
which has the necessary GUI on it. Then, whenever you want a particular "form",
you instantiate a generic MDI child form, and stick an instance of your ActiveX
control on it.
Otherwise, I could have mistaken your intention, and all you are saying is
that you are creating three EXEs, which happen to have the same MDI form.
In which case - it's simple. As long as you don't directly reference any
specific modules or global variables, you can simply share the MDI form between
all the projects. And if you <really> have to reference a particular global
variable, you could always using conditional compilation, and set the appropriate
variable in the Project Properties -> Make property tab.
-------------------------
Mark Alexander Bertenshaw
Programmer/Analyst
Prime Response
Brentford
UK
"Benjamin Bruce" <bwanika@libero.it> wrote:
>
>Hi,
>I have a huge project that I have to divide into three different projects
>with three different executables. They have to share the same MDI form (Menu
>as is now). How do I go about it?
>Thanks in advance.
>Benjamin
-
Re: Intercomunicating projects
Thanks Mark,
I am really trying to carry out both procedures you explained. I like the
DLL suggestion and I am working on it right away. However, I do not get the
second solution. How do I share n exes using the same MDI form?
Thanks again
Benjamin
"Mark Alexander Bertenshaw" <mark.bertenshaw@virgin.net> wrote:
>
>Benjamin -
>
>Are you dividing your code into projects in order to prevent the use of
too
>much memory? If so, then I have been trying to do the same, with some success.
> The main problem is identifying areas which are shared, and pulling then
>out, since even if a small part of a DLL is used, then the whole lot is
loaded
>into memory.
>Also, sadly, you cannot use forms appearing in DLLs with an MDI form in
an
>EXE (a serious downside IMHO). However, one workaround was suggested by
Daniel
>Appleman. Instead of MDI child forms, he creates OCXs containing UserControls
>which has the necessary GUI on it. Then, whenever you want a particular
"form",
>you instantiate a generic MDI child form, and stick an instance of your
ActiveX
>control on it.
>
>Otherwise, I could have mistaken your intention, and all you are saying
is
>that you are creating three EXEs, which happen to have the same MDI form.
>In which case - it's simple. As long as you don't directly reference any
>specific modules or global variables, you can simply share the MDI form
between
>all the projects. And if you <really> have to reference a particular global
>variable, you could always using conditional compilation, and set the appropriate
>variable in the Project Properties -> Make property tab.
>
>
>-------------------------
>Mark Alexander Bertenshaw
>Programmer/Analyst
>Prime Response
>Brentford
>UK
>
>"Benjamin Bruce" <bwanika@libero.it> wrote:
>>
>>Hi,
>>I have a huge project that I have to divide into three different projects
>>with three different executables. They have to share the same MDI form
(Menu
>>as is now). How do I go about it?
>>Thanks in advance.
>>Benjamin
>
-
Re: Intercomunicating projects
Mark Alexander Bertenshaw <mark.bertenshaw@virgin.net> wrote in message
news:39d9ce13$1@news.devx.com...
>
> Also, sadly, you cannot use forms appearing in DLLs with an MDI form in an
> EXE (a serious downside IMHO). However, one workaround was suggested by
Daniel
> Appleman. Instead of MDI child forms, he creates OCXs containing
UserControls
> which has the necessary GUI on it. Then, whenever you want a particular
"form",
> you instantiate a generic MDI child form, and stick an instance of your
ActiveX
> control on it.
Or...
You can use make the DLL's form into a child window with the Set parent.
For a really rough experiment see:
http://www.geocities.com/mrfelis/dllform.zip
> Otherwise, I could have mistaken your intention, and all you are saying is
> that you are creating three EXEs, which happen to have the same MDI form.
> In which case - it's simple. As long as you don't directly reference any
> specific modules or global variables, you can simply share the MDI form
between
> all the projects. And if you <really> have to reference a particular
global
> variable, you could always using conditional compilation, and set the
appropriate
> variable in the Project Properties -> Make property tab.
>
>
> -------------------------
> Mark Alexander Bertenshaw
> Programmer/Analyst
> Prime Response
> Brentford
> UK
>
> "Benjamin Bruce" <bwanika@libero.it> wrote:
> >
> >Hi,
> >I have a huge project that I have to divide into three different projects
> >with three different executables. They have to share the same MDI form
(Menu
> >as is now). How do I go about it?
> >Thanks in advance.
> >Benjamin
>
-
Re: Intercomunicating projects
Benjamin -
I'm glad that the first idea is useful to you.
The second idea was assuming that you had 3 EXE projects. You are not
interested in sharing code other than the MDI Form. To do this, create the
form in one project. Close this project, and save all the files. Create or
open another project, and add the MDI form which you saved in the first. In
this way, you can also add the MDI Form to the third project.
All this means that the MDI form is compiled into each three project, and
when you update the MDI form in any of the projects, you will have to
recompile each project.
Does this help?
Mark Bertenshaw
Kingston upon Thames
UK
--
Mark Alexander Bertenshaw
Programmer/Analyst
PrimeResponse
Brentford
UK
"Benjamin Bruce" <bwanika@libero.it> wrote in message
news:39d9f445$1@news.devx.com...
>
> Thanks Mark,
> I am really trying to carry out both procedures you explained. I like the
> DLL suggestion and I am working on it right away. However, I do not get
the
> second solution. How do I share n exes using the same MDI form?
> Thanks again
> Benjamin
>
>
> "Mark Alexander Bertenshaw" <mark.bertenshaw@virgin.net> wrote:
> >
> >Benjamin -
> >
> >Are you dividing your code into projects in order to prevent the use of
> too
> >much memory? If so, then I have been trying to do the same, with some
success.
> > The main problem is identifying areas which are shared, and pulling then
> >out, since even if a small part of a DLL is used, then the whole lot is
> loaded
> >into memory.
> >Also, sadly, you cannot use forms appearing in DLLs with an MDI form in
> an
> >EXE (a serious downside IMHO). However, one workaround was suggested by
> Daniel
> >Appleman. Instead of MDI child forms, he creates OCXs containing
UserControls
> >which has the necessary GUI on it. Then, whenever you want a particular
> "form",
> >you instantiate a generic MDI child form, and stick an instance of your
> ActiveX
> >control on it.
> >
> >Otherwise, I could have mistaken your intention, and all you are saying
> is
> >that you are creating three EXEs, which happen to have the same MDI form.
> >In which case - it's simple. As long as you don't directly reference any
> >specific modules or global variables, you can simply share the MDI form
> between
> >all the projects. And if you <really> have to reference a particular
global
> >variable, you could always using conditional compilation, and set the
appropriate
> >variable in the Project Properties -> Make property tab.
> >
> >
> >-------------------------
> >Mark Alexander Bertenshaw
> >Programmer/Analyst
> >Prime Response
> >Brentford
> >UK
> >
> >"Benjamin Bruce" <bwanika@libero.it> wrote:
> >>
> >>Hi,
> >>I have a huge project that I have to divide into three different
projects
> >>with three different executables. They have to share the same MDI form
> (Menu
> >>as is now). How do I go about it?
> >>Thanks in advance.
> >>Benjamin
> >
>
-
Re: Intercomunicating projects
Benjamin,
> Hi,
> I have a huge project that I have to divide into three different projects
> with three different executables. They have to share the same MDI form
(Menu
> as is now). How do I go about it?
You could take a look at the Add-In control at http://home.swipnet.se/vbasic
.. It will make it wery easy to create a group of projects with a dynamic
client and dll servers.
Best wishes...
Thomas Allin
http://home.swipnet.se/vbasic
http://www.musiker.nu/thescore
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
Forum Rules
|
Top DevX Stories
Easy Web Services with SQL Server 2005 HTTP Endpoints
JavaOne 2005: Java Platform Roadmap Focuses on Ease of Development, Sun Focuses on the "Free" in F.O.S.S.
Wed Yourself to UML with the Power of Associations
Microsoft to Add AJAX Capabilities to ASP.NET
IBM's Cloudscape Versus MySQL
|
Bookmarks