I'm trying to learn how to program Windows GUIs. So far I've gotten the impression that this can be accomplished using a variety of different methods. If I learn to program GUIs using one method, does that mean I still have to learn 3 more?
I'm trying to learn how to program Windows GUIs. So far I've gotten the impression that this can be accomplished using a variety of different methods. If I learn to program GUIs using one method, does that mean I still have to learn 3 more?
You can use directly the Windows API or use a library such as Microsoft MFC or Borland VCL to make development faster.
I compiled some Windows GUI stuff today with the following at the top of the file
It compiled and ran okay, but it ran only on my computer. Why would this not run on another computer? Was it my compiler settings? Were the "includes" not statically linked?Code:#using <mscorlib.dll> #using <System.dll> #using <System.Drawing.dll> #using <System.Windows.Forms.dll> using namespace System; using namespace System::Drawing; using namespace System::Windows::Forms;
You're using Microsoft's .Net Framework stuff, it'll only work in computers that have it installed.
Another (portable to other platforms): wxWidgets.
Really? Is there no way I can statically link it?Originally Posted by Etinin
No. That's how crappy C++ . NET is.
I don't think I've ever heard of anyone wanting to statically link over 100MB of runtime before. You're gold, thetinman.
On the plus side, if you were to say "This program requires a minimum of Windows XP SP2" then you could guarantee that it will work.
SMurf,
Are you saying that it would work if I both linked the 100MBs and ran Windows XP SP2 on the target computer?
No, I'm saying that Windows XP SP2 is (unless someone has fiddled with the service pack) guaranteed to have .NET installed, so what you have now should work on it. Vista is also guaranteed to have it installed.
In this supposedly fast-moving world of computers, it's not a bad idea.
The program I mentioned ran on this computer, which has Windows XP SP2. When I tried to run the program on two other Windows XP SP2 computers I received a message about the program failing to initialize. Given your statement, I don't know what's causing the problem. Only two things come to mind and I think both are unlikely culprits.
1) The program did not have an installer
2) The program did not use any #include statements, so there is no <iostream>, <stdio.h> or anything of that sort.
does it list the missing dlls?
All problems in computer science can be solved by another level of indirection,
except for the problem of too many layers of indirection.
– David J. Wheeler
No. It does not.