24. januar 2002 - 15:46Der er
17 kommentarer og 1 løsning
Kun i Win32... ?
Hej eksperter... ;)
- Jeg har lige siddet og bakset et vældig (syns jeg! *G*) lille program sammen, som jeg skal bruge til noget i dos... Programmet skal starte hver gang man tænder computeren, derfor har jeg skrevet det ind i Autoexec.bat, det virker også fint, men!
- Når man så starter computeren, og windows skal til at loades, kommer der denne frygtelige besked: This program must be run under win32!
- Hvad gør jeg ved det? Jeg skal have lavet sådan at det OGSÅ virker i dos... =)
Hvis du fjerner den fra autoexec, og ligger den i startup mappen (højre-klik på start, vælg open/åbn, dobbelt-klik på programs/programmer), så starter den først når windows er loaded. (Hvilket vel er meningen???) :)
Visual C++ laver IKKE altid win32 applikationer! Version 1, 2 og 3 kan stadig bruges til 16-bit windows og DOS applicationer, og denne gang krævede visse 32-bit programmer win32S for at køre! Derfor! Og du kan naturligvis ikke køre win32programmer i DOS....
Compiler og kør det. Brug evt. DevC++ fra BloodShed, kan det samme som Visual C++, dog er programmet gratis, mens Microsoft Visual C++ koster 5000 kr. DevC++ er god til både Windows, UNIX, Linux og DOS-programmer, altså er den gratis, bedre, mere stabil og mere funktionsdygtig end Borlands og Microsofts C++ compilere :-) Download DevC++ på: http://www.bloodshed.net
P.S. Du kan også downloade kildekoden til DevC++ - gratis :-)
Bare tryk F9. Om det er til 16 bit eller 32 bit afhænger af, hvilke Windows-funktioner du bruger. Hvis du f.eks. bruger de helt basale funktioner som int WinMain( hInstance, hPrevInstance, lpszCmdLine, nCmdShow ) eller int PASCAL WinMain( HANDLE hInstance, HANDLE hPrevInstance, LPSTR lpCmdLine, int nCmdShow ); vil det (tror jeg) også kunne afvikles under 16-bit Windows.
For at compile en 16-bits C/C++ program til dos, skal du: have VC++ ,x, 2x eller 3.x, og så skal du vælge "compile to DOS .exe file"
Senere versioner er udelukkende til 32-bit programmer, derfor har vi prof'er gemt en "gamle" compiler af vejen...der findes en separat win32s SDK, men det er nok for meget for dig...
Professoren -> Ja ja, det er altsammen meget flot, men nu er det sådan at jeg er startet med C++ for nylig, så jeg har ikke haft mulighed for at gemme en "gammel" version, da jeg ikke har arbejdet med det før VC++ 6!
- Der må sQ da være en måde jeg kan compile det program til 16-bit???
Geek1011 -> Jeg har altså problemer med mit program når jeg compiler det i Dev C++... Den vil ikke godtage getch() funktionen, som er en stor del af mit programmet... Via nogle header-filer læste jeg mig frem til at getche() skulle virke, men så fik jeg problemer med noget clearscreen-noget... =(
Kan du ikke bruge Getch i DevC++ skal du heller ikke tro, at du kan bruge dem i VC++. DevC++ har nøjagtig samme funktioner som DevC++, DevC++ er bare gratis, i modsætning til VC++. Så ang. det med Getch er det et helt andet problem. Men et DOS-program laves altså sådan:
#include <iostream.h>
int main() { cout<<"Dette er mit program. "<<endl; }
Ja.. Problemet er bare at de ikke kan compile til 16-bit... ;(
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.