|
Paul S. Vickery wrote: but can't find a way of re-ordering the window list
I am not sure if you can change menu item positions, I have never tried to do it. If it is not supported perhaps you could manage the lists order in a more appropriate memory structure and just change the menu item text and which item it references in the structure.
|
|
|
|
|
Context is C++, Visual C6
My application has to interface with two types of peripherals, with the same services :
For exemple, the service is :
void SetOutput( index, level) and
So my application do :
void MyApplicationFunc()
{
classPeripheral *p = new classPeripheral();
p->SetOutput( 0, 1);
}
I want to code TWO DLL in C++, with the same class interface, but driving two diffrents kind of peripherals.
For exemple
class cPeripheral
{
public :
cPeripheral();
void SetOutput( int Index, bool Level);
};
But each implementation have differents internal functions and variables in order to drive the specific peripheral.
So I want to have a good quality of code (no cast or void pointer), a good dependency resolution between the differents .dsp, and the possibility to change one DLL (DLL peripheral 1) by the other (DLL peripheral 2) with a perfect consistancy of dynamic link between application and class services.
Can you give me a simple workspace sample, with the differents projects (.dsp) (Application, peripheral 1, peripheral 2), showing the architecture , definition and inter-dependencies between the differents classes.
Best regards.
|
|
|
|
|
You might find one of these design patterns [^] useful.
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[My articles]
|
|
|
|
|
marcelcerdanjunior wrote: Can you give me a simple workspace sample, with the differents projects (.dsp) (Application, peripheral 1, peripheral 2), showing the architecture , definition and inter-dependencies between the differents classes.
Do I have to provide the spoon too?
More seriously, I do exactly what you're talking about - I have plugin DLLs which manage different motion control architectures through a common interface. I don't actually use COM for this, as I'm not that bothered about other people controlling my machines, but I do use their philosophy.
I have a pure virtual class, and the implementations inherit from this. So far, just like "interface" keyword.
I have a registry key with the name of the implementation DLL. I load that, and call a named function to export a pointer to a control object. That pointer is of the virtual base class type. All other parts of the software only know about that base class.
There are some good starter articles on COM on this site if you want further inspiration.
Good luck,
Iain.
Codeproject MVP for C++, I can't believe it's for my lounge posts...
|
|
|
|
|
Nice post but you didn't explain what the spoon is for.
Oh, if it involves his hind parts I don't want to know.
|
|
|
|
|
HI! help, please, me.
MFC, Visual C++ STUDIO 2008
I want to place string into ComboBox that
Is on modeless dialog window.
I’m using two classes:
class CAdodc_my : public Cdialog
class CMyModeless2 : public Cdialog
CMyModeless2* m_pModeless;
CComboBox m_cComboBoxModeless;
BOOL CAdodc_my::OnInitDialog()
{
m_pModeless = new CMyModeless2( this);
m_pModeless->m_cComboBoxModeless.AddString("SPARTAC");
}
Debug Assertion Failed!
Program: ...Tested_Examples_Studio_2008\ADOMy_first\Debug\ADOMy_first.exe
File: f:\dd\vctools\vc7libs\ship\atlmfc\include\afxwin2.inl
Line: 879
For information on how your program can cause an assertion
failure, see the Visual C++ documentation on asserts.
(Press Retry to debug the application)
|
|
|
|
|
At the time you try to AddString, you have not yet created the dialog, so the ComboBox doesn't exist yet.
After you create the instance with new, you need to call Create to actually create the windows.
Hope that helps.
Karl - WK5M
PP-ASEL-IA (N43CS)
PGP Key: 0xDB02E193
PGP Key Fingerprint: 8F06 5A2E 2735 892B 821C 871A 0411 94EA DB02 E193
|
|
|
|
|
is m_cComboBoxModelessinitialized/created?
You need to google first, if you have "It's urgent please" mentioned in your question.
_AnShUmAn_
|
|
|
|
|
CHIVOTIOV wrote: m_pModeless->m_cComboBoxModeless.AddString("SPARTAC");
Do this in CMyModeless2::OnInitDialog() .
"Old age is like a bank account. You withdraw later in life what you have deposited along the way." - Unknown
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
|
|
|
|
|
I have string data for a dialog. However when i click on the a button i want this string data to be displayed on the second dialog.
Please let me know how to achieve this...
Thanks in advance
|
|
|
|
|
|
I think the link to that tox's article should be permanently added to the forum page.
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[My articles]
|
|
|
|
|
Yep, it's a shame it is so under-rated...
|
|
|
|
|
Yes. I think the article for beginners are the most valuable here at CP.
Unfortunately, such articles are often downvoted by the 'very-smart-super-expert' people who enjoys themselves just with the 'most-advanced-innovative-stuff' (not to mention the 'trollistic-coward-univoter' CP plague).
I suppose there is also something personal against tox, since he is a bit 'touchy', no need to say that if you downvote an article beacuse you dislike the author then you're definitely a pathological idiot.
It's frustrating form me, having to say, each time: "Trust me, it scored bad, but is actually a very good article".
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[My articles]
|
|
|
|
|
Can u get the second dialog's handle,if so u can use postmessage()
Later buggers harm more.
|
|
|
|
|
Hi all
I am a view class which is derived from CScrollView.I am overriding OnSize() function.
But when the window is minimized or maximized it is not calling.When it is restored it is calling.
Can anybody help me.I have to do some calculations when the window is minimized.
Thanks and regards
Deepu.
|
|
|
|
|
WM_GETMINMAXINFO
BOOL IsIconic(HWND wnd)
--
Arman
|
|
|
|
|
|
Hi i am compiling one project in VS2005
while building that in Release Unicode i am getting a linker error that cannot open "../release - unicode/****_.lib".
In Linker setting extra path is getting appended in that...
please tell me how to remove it so as to build the project successfully
Thanks,
|
|
|
|
|
Hi all
How can i call funtion in thread .I need simple Thread example.Plz help me
|
|
|
|
|
|
thank for reply but i need to pass myfunction in thread.Simple i want to create a thread and in this thread i want to pass
Copy Function .Plz help me
|
|
|
|
|
What do you mean by "pass myfunction in thread" ? Do you mean that you have to call your function from within the thread ? If yes, you need to make sure that your function prototype is the same as the one expected by the CreateThread function (see here[^]).
|
|
|
|
|
Here[^] is an excellent article about worker threads. A bit long but very interesting.
|
|
|
|
|
Ok both are same article.But i need very simple only two line of example how can i pass Copy function in thread.Plz help me i don't need two much high funda article becouse i don't know any thing about THREAD.So plz help me
|
|
|
|