Creating a DLL with Visual C++ 1.52

I want to create a 16-bit DLL with MS Visual C++ 1.52 using MFC and custom VBX. Is this possible? How?
mskohutAsked:
Who is Participating?
 
psdavisConnect With a Mentor Commented:
I have created my own customized VBXs and have installed them inside of my own DLL.  The VBX was a user interface control (most win31 ones are).  You can include them just like you would include them in any Win31 application.  

Step #1 is to insure that your DLL has resources such as dialogs with standard implementation.  Once you can display a dialog from your DLL, you're pretty much home free.  You need to surround every entry point in your DLL with AfxSetResourceHandle functions to make sure your application will be looking in your DLL files instead of your application.

Step #2 is the VBXs.  They really didn't play a difference when converting my application to a DLL.  Just make sure you use your Set/GetNumProperty functions to edit the status of your controls.

e.g.
((CVBControl*) GetDlgItem( iPrompt ))->GetNumProperty( "Value" );

For the control itself, use the standard implementation.  Add a user field, set your class to VBControl, style to 0x5401000 and your ExStyle to 0x0.

All in all, just getting the dialogs to show up in the DLL should prove to be your hardest part.  The VBX is just a minor annoyance until then.

Good luck and I hope you're able to upgrade to Win95 programs before I can!!  (Use the "Hey, isn't Win31 not year 2000 compliant?  I heard that on the web!!" )  It spooked my boss into converting!!

Phillip

0
 
kinkajouCommented:
I know how to create DLL's in MSVC++ 1.52. I'm not sure what VBX is. Maybe I can help?
0
 
DanJenkinsCommented:
Possible: Yes.
How: Several ways.

Use any standard Dll template. (ie for the samples directory)
After the initial files are in place, it is the same as adding the control to a Exe program.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.