Trädvy Permalänk
Medlem
Plats
Stockholm
Registrerad
Aug 2009

C++ Hjälp!

Hej!

Jag föröker lära mig programmera, mitt första projekt är ett skjutsikte
som man kan använda i spel.
Det här är koden jag har kommit fram till:

// CH Test.cpp : Defines the exported functions for the DLL application.
//

#include "stdafx.h"
bool xhair=true;
;-D3DVIEWPORT9 o;Viewport;
-ID3DXLine;*pLine;
-D3DXCreateLine(DEVICE, &pLine);
-DEVICE->GetViewport(&oViewport);
-void fillrgba(int x, int y, int w, int h, int r, int g, int b, int a)
;{
-D3DXVECTOR2 vLine[2];

-pLine->SetWidth( w );
-pLine->SetAntialias( false );
-pLine->SetGLLines( true );

-vLine[0].x = x + w/2;
-vLine[0].y = y;
-vLine[1].x = x + w/2;
-vLine[1].y = y + h;

-pLine->Begin( );
-pLine->Draw( vLine, 2, D3DCOLOR_RGBA( r, g, b, a ) );
-pLine->End( );
}
-//Then in endscene/begin/dip/present or a subdevice
-BYTE* bAlpha = (BYTE*)0x243D74F4; //cl_crosshairalpha

-if(xhair);{
-*bAlpha=0;
-fillrgba(oViewport.Width/2, o;Viewport.Height/2, 6, 6, 255, 0, 0, 255);
-{}else;{
-*bAlpha=255;
}
-if(GetAsyncKeyState(VK_F2)&1)xhair=!xhair;

När jag ska köra koden får jag 12 error meddelanden.
Här är dom:

1>------ Build started: Project: CH Test, Configuration: Debug Win32 ------
1>Compiling...
1>CH Test.cpp
1>c:\users\transqusion\documents\visual studio 2008\projects\ch test\ch test\ch test.cpp(6) : error C2059: syntax error : '-'
1>c:\users\transqusion\documents\visual studio 2008\projects\ch test\ch test\ch test.cpp(6) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>c:\users\transqusion\documents\visual studio 2008\projects\ch test\ch test\ch test.cpp(7) : error C2059: syntax error : '-'
1>c:\users\transqusion\documents\visual studio 2008\projects\ch test\ch test\ch test.cpp(7) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>c:\users\transqusion\documents\visual studio 2008\projects\ch test\ch test\ch test.cpp(8) : error C2059: syntax error : '-'
1>c:\users\transqusion\documents\visual studio 2008\projects\ch test\ch test\ch test.cpp(9) : error C2059: syntax error : '-'
1>c:\users\transqusion\documents\visual studio 2008\projects\ch test\ch test\ch test.cpp(10) : error C2059: syntax error : '-'
1>c:\users\transqusion\documents\visual studio 2008\projects\ch test\ch test\ch test.cpp(11) : error C2447: '{' : missing function header (old-style formal list?)
1>c:\users\transqusion\documents\visual studio 2008\projects\ch test\ch test\ch test.cpp(27) : error C2059: syntax error : '-'
1>c:\users\transqusion\documents\visual studio 2008\projects\ch test\ch test\ch test.cpp(30) : error C2059: syntax error : '-'
1>c:\users\transqusion\documents\visual studio 2008\projects\ch test\ch test\ch test.cpp(30) : error C2447: '{' : missing function header (old-style formal list?)
1>c:\users\transqusion\documents\visual studio 2008\projects\ch test\ch test\ch test.cpp(38) : fatal error C1004: unexpected end-of-file found
1>Build log was saved at "file://c:\Users\TransQusion\Documents\Visual Studio 2008\Projects\CH Test\CH Test\Debug\BuildLog.htm"
1>CH Test - 12 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

Nu undrar jag om nån kan hjälpa mig!
Ifall nån skulle hjälpa mig skulle jag bli djupt tacksam!

Trädvy Permalänk
Medlem
Plats
Exil i huvudstaden
Registrerad
Jul 2004

Jag kan inte se vad inledande - på varje rad gör i koden. Och om du läser felmeddelandena så är kompilatorn inne på samma spår....

Crap.

Trädvy Permalänk
Medlem
Plats
Stockholm
Registrerad
Aug 2009
Citat:

Ursprungligen inskrivet av Morr
Jag kan inte se vad inledande - på varje rad gör i koden. Och om du läser felmeddelandena så är kompilatorn inne på samma spår....

Kan du hjälpa mig göra det bättre då?
Snälla!
Det här var den första koden jag nånsin kommit fram till!

Trädvy Permalänk
Medlem
Plats
Exil i huvudstaden
Registrerad
Jul 2004

Förlåt, det var inte meningen att verka dryg om så var fallet.
Alltså, har du skrivit koden helt själv eller har du klippt in från exempelkod?

Det ser ut som en hel del tecken kommit in i koden som inte hör hemma där. Jag har ingen möjlighet att ta din kod och korrigera den, men jag skall försöka ge dig några tips:

1) Börja med att ta bort - i början av varje rad
2) Ta även bort inledande ; (två rader ser jag)

Crap.

Trädvy Permalänk
Medlem
Plats
Stockholm
Registrerad
Aug 2009
Citat:

Ursprungligen inskrivet av Morr
Förlåt, det var inte meningen att verka dryg om så var fallet.
Alltså, har du skrivit koden helt själv eller har du klippt in från exempelkod?

Det ser ut som en hel del tecken kommit in i koden som inte hör hemma där. Jag har ingen möjlighet att ta din kod och korrigera den, men jag skall försöka ge dig några tips:

1) Börja med att ta bort - i början av varje rad
2) Ta även bort inledande ; (två rader ser jag)

Det hjälpte inte! När jag gjorde det vart det 33 error meddelanden!!
Snälla korrigera koden!
Skulle bli mycket tacksam!

Trädvy Permalänk
Medlem
Plats
Exil i huvudstaden
Registrerad
Jul 2004

Alltså... jag skrev ju att jag inte har *möjlighet* att ta din kod och korrigera...

Att du får fler meddelanden betyder inte att du är på fel väg. Kompilatorn som översätter ditt cpp-fil till körbar kod jobbar i flera steg. Det kan helt enkelt vara så att när man rättar några fel får man fler beroende på vad som inte är rätt.

Vad är det för nya fel du får? - har du inte i början på C++ rader så de ska inte vara där. ; avslutar programmeringssatser men det finns tydliga regler om hur dessa ser ut.

För övrigt kan jag rekommendera denna tråd som är sticky här på Swec: http://www.sweclockers.com/forum/showthread.php?s=&threadid=5...

Jag är nyfiken: är det ett hobbyprojekt eller nån sorts uppgift? Och var har du hämtat kod ifrån, om du har det?

Crap.

Trädvy Permalänk
Medlem
Plats
Stockholm
Registrerad
Aug 2009

http://www.gamerzplanet.net/forums/soldier-front-hacks-discus...

Därifrån fick jag koden.
Och länken du skrev fungera inte!
Och varför kan du inte korrigera koden?
Snälla svara inget elakt menat!

Trädvy Permalänk
Medlem
Registrerad
Dec 2004

Kort och gott; koden kommer inte att fungera.

Det är ett par fragment som ska sättas in i större mängd kod. DirectX kräver åtminstonde tio gånger (eller mer) kod för att enbart initialiseras, något som definitivt är överkurs. Att fixa denna kodsnutt och få den att kompilera till ett program som gör det som är tänkt vore som att "reparera" (läs: bygga) en bil när man endast har mugg-hållaren.

C++ är ett mycket komplext språk och det är mer eller mindre nödvändigt att du läser från en grundläggande bok först. Uppskattningsvis tar det åtminstonde något/några år innan man har tillräckligt med kunskaper för att seriöst börja kunna leka med DirectX.

"Nothing is impossible because impossible itself says I M Possible..."

Trädvy Permalänk
Medlem
Plats
Stockholm
Registrerad
Aug 2009

Koden på den sidan såg ju ut att vara rätt, i alla fall syntaktiskt.

Prova kopiera koden igen

Trädvy Permalänk
Medlem
Plats
Exil i huvudstaden
Registrerad
Jul 2004

Hej!

Varför jag inte kan korrigera koden spelar mindre roll. Det är något du måste acceptera. De flesta här är välvilligt inställda och vill gärna hjälpa till, mig inklusive. Men det sker på frivillig basis.

Men jag skall förklara varför: I mitt fall handlar det om att jag inte har tiden att sätta upp ett testprojekt, få din kod att fungera och sedan försöka förklara vad som var fel och få dig förstå varför.

Även om jag hade tiden hade jag ändå inte gjort det. Det beror på att det finns ett uppenbart glapp mellan din kunskapsnivå och vad du försöker åstakomma - annars skulle du åtminstone förstå att bindestreck inte har något att göra i början av raderna.

Jag vill för den skull inte vara otrevlig, jag tycker det är kul att du vill prova på att programmera men jag rekommenderar dig verkligen att ta det från början. Klippa in kodfragment av rendreringskod är inte rätt start för att lära sig programmera om nån frågar mig.

Det finns gott om tutorials och exempel på C++ som lär dig grunderna. För precis som Weeblie skriver: det du har framför dig är fragment och det behövs mer kod för att få det att fungera. Dessutom ser det ut som du har startat ett DLL-projekt. Om så är fallet, fanns det en tanke med det så är väl DLL-er inte det första man ger sig på heller. Om inte, då har du mycket att beta av innan du börjar programmera grafik, som t.ex. hur man bygger ett projekt, vad det innebär mm.

Mitt tips är att försöka lära dig grunderna först. Då får du ut mer av programmeringen och kan ställa mer kvalificerade frågor. Länken jag försökte ge dig hittar du enkelt själv, den är sticky under programmeringssektionen och ger bra tips om hur man ställer frågor här och får bra med hjälp. Även där bör du läsa in dig lite

En första övning kan vara att googla bra tutorials.

Crap.

Trädvy Permalänk
Medlem
Plats
Stockholm
Registrerad
Aug 2007

erm... Överkurs...

Trädvy Permalänk
Medlem
Plats
Exil i huvudstaden
Registrerad
Jul 2004

Crap.

Trädvy Permalänk
Medlem
Plats
Lund
Registrerad
Jan 2003

Regel 1 när man programmerar, förstå din kod!

Om du ska lära dig programmera så är detta verkligen inte rätt ställe att börja på. Det finns mycket att lära sig innan man ger sig på grafisk programmering, speciellt om du ska göra det m.h.a. directx och c++.

i5 2500k, GTX770SLI, 8GB RAM