I have a question on getting Visual Studio 1008 Standard or the Pro version. I have used and worked in VC++ version 6.0 and have used that to develop various smallish MFC programs that we use in our daily work as engineers. We are migrating to new Autocad programs (version 2009) and some of our existing MFC programs are ARX based programs used in Autocad 2000i & 2004.
I have downloaded the new ObjectARX for 2009 and that requires VS 2005 to compile. This VS version is obviously not available from Microsoft any more and caters obviously for "older" technology. We need to purchase VS 2008 but are unsure if the Standard version will be sufficient or should we purchase the professional version. Your expert opinions will be appreciated.
The biggest differences between Standard and Pro are support for Windows Mobile and Remote Debugging. If you don't need these, standard works just fine. (I'd still be using standard except for periodic Windows Mobile development and helping someone else set up remote debugging [I walked through and verified the steps on the system we sell to make sure it could be done.])
Anyone who thinks he has a better idea of what's good for people than people do is a swine.
- P.J. O'Rourke
I'm having troubles in resolving (using DNSQuery()) a hostname in a subdomain.
Lets assume MainDomain and SubDomain.
Now, SubDomain is a subdomain to MainDomain (kinda obvious ).
Well... I'm on a host called "maindomain1" and there is a host called "subdomain1".
When I am using DNSQuery() from "maindomain1" to "subdomain1" I get that "subdomain1" does not exist.
What I actually need to do is to place subdomain1's full name:
"subdomain1.SubDomain.MainDomain.com" and it will work.
BUT, I don't want to place the full name!
"Ping" for instance can resolve only by getting "subdomain1", while nslookup can't...
I want to know how "Ping" know how to resolve that subdomain1 name,
Or in other words, is there a C++ function that receives "subdomain1" and returns "subdomain1.SubDomain.MainDomain.com" ???
To disable them is dead easy with MFC. You just provide an ON_UPDATE_COMMAND handler for a command, and away you go.
For 99% of my menus, I prefer to go this way. Then a user can say "ah, here the option is, I just can't use it right now for some reason".
The option is the one MFC uses by default - switch the menu set completely. It has one for "no view", and each view has an associated menu it puts in place. No point in having much more than open, close and help for an MDI app with no documents... I just use one global menu, but their approach is a perfectly good one.
The last thing I do is to have a setup submenu on my Tools menu. The first menu option on that submenu has an ID of IDM_CONTROL_EDITBUSFILE. If the user has not put a specific flag on the command line, I remove the submenu completely. This saves them accidentally doing something that only knowledgable people (ie me and my colleagues) can do.
void CIOBus::OnUpdateControls (CCmdUI* pCmdUI)
if (pCmdUI->m_pSubMenu) // Whole of the control submenu
// Is this the Tools | Setup system sub menu we are validating?if ( (pCmdUI->m_nID == IDM_CONTROL_EDITBUSFILE) && !CGlobals::IsSettingUp () )
pCmdUI->m_pMenu->DeleteMenu (pCmdUI->m_nIndex, MF_BYPOSITION);