Neurochirurgie minim invazivă
"Primum non nocere" este ideea ce a deschis drumul medicinei spre minim invaziv. Avansul tehnologic extraordinar din ultimele decenii a permis dezvoltarea tuturor domeniilor medicinei. Microscopul operator, neuronavigația, tehnicile anestezice avansate permit intervenții chirurgicale tot mai precise, tot mai sigure. Neurochirurgia minim invazivă, sau prin "gaura cheii", oferă pacienților posibilitatea de a se opera cu riscuri minime, fie ele neurologice, infecțioase, medicale sau estetice. www.neurohope.ro |
Library: ALLEGRO.h
Last Updated: Mar 28 2006 22:36, Started by
Purice`
, Feb 16 2006 09:25
·
0
#1
Posted 16 February 2006 - 09:25
Am cautat biblioteca allegro f mult(am inteles ca e speciala pentru jocuri) dar totusi nu o gasesc, am cautat pe yahoo si google ,am gasit ceva dar nu cred ca am gasit ce trebuie ...
Si a 2-a intrebare este cum o "instalez" in VC++? http://www.allegro.com :un link dintre multe alte link-uri ...dar totusi nu ma descurc. . Multumesc anticipat . |
#2
Posted 16 February 2006 - 09:28
cred ca nu stii sa cauti cu google: http://www.talula.demon.co.uk/allegro/ , http://www.google.co...c &btnG=Search
|
#3
Posted 16 February 2006 - 12:37
Nu e vorba ca nu stiu sa caut cu google , dar nu gasisem cum sa "instalez" library ...
|
#4
Posted 25 February 2006 - 00:32
Cum instalez acesta biblioteca? Am pus README-ul - nu e vorba ca nu inteleg cuvintele in engleza ci cum le inlocuiesc chestiile alea pe acolo ... am download-at de pe site http://alleg.sourceforge.net/wip.html all420.zip.... multumesc
Attached Files |
#5
Posted 26 February 2006 - 14:29
Va rog... am nevoie de acesta librarie !!! copiez allegro.h in VC/include/?? cum fac????
Stiu ca va enervez dar chiar nu am idee .!!!! |
#6
Posted 26 February 2006 - 18:52
libraria aia trebuie sa o construiesti singur porinind de la surse.
citeste si tu acel readme.txt. pe scurt: exista un make file pt visual studio. modifici variabila de mediu ca sa includa calea catre nmake.exe, care se afla in directorul ..\Program Files\Microsoft Visual Studio\VC6\Bin. fisierul VCVARS32.BAT din acelasi director face asta pt tine. dupa ce variabila path e setata, executi nmake cu parametru numele fisierului make. dupa ce obtii lib-urile, in proiectul tau incluzi fisierele header, iar la linkeditare incluzi liburile. |
#7
Posted 17 March 2006 - 18:37
uite aici o eroare cand compilez un simplu cod si imi da eroarea
--------------------Configuration: ex3d - Win32 Debug-------------------- Compiling... ex3d.c c:\program files\microsoft visual studio\vc98\include\allegro\internal\alconfig.h(64) : fatal error C1083: Cannot open include file: 'allegro/platform/astdint.h': No such file or directory Error executing cl.exe. ex3d.exe - 1 error(s), 0 warning(s) this is the error ... I compile ex3d.c to the exemple why? I install 4.2.0 version |
#8
Posted 18 March 2006 - 01:35
dupa cite vad ai facut o gresala, introducind fisierele in directorul standard unde e instalat Visual C++. acest lucru il poti evita foarte usor, in doua moduri: ori specifici o cale globala in Tools -> Options -> Directories ori Project settings -> C/C++ -> Category: Preprocessor -> Additional Include Directories.
atentie si la caile relative din directivele #include. dupa mesajul de eroare directorul de include trebuie sa fie parintele folderului "allegro". asigura-te si ca acel fisier (alconfig.h) exista intr-adevar. daca sistemul nu e setat cum trebuie, s-ar putea sa ai erori si la link-editare. nu inteleg de ce nu ai incercat cum ti-am spus, cu makefile. rezolvai totul in consola si nici nu trebuia sa deschizi visual c++. Edited by hErr, 18 March 2006 - 01:35. |
#9
Posted 18 March 2006 - 15:20
Quote libraria aia trebuie sa o construiesti singur porinind de la surse. citeste si tu acel readme.txt. pe scurt: exista un make file pt visual studio. modifici variabila de mediu ca sa includa calea catre nmake.exe, care se afla in directorul ..\Program Files\Microsoft Visual Studio\VC6\Bin. fisierul VCVARS32.BAT din acelasi director face asta pt tine. dupa ce variabila path e setata, executi nmake cu parametru numele fisierului make. dupa ce obtii lib-urile, in proiectul tau incluzi fisierele header, iar la linkeditare incluzi liburile. cum modific variabila de mediu ? am facut cum zicea pe site-ul oficial http://www.allegro.c...stall-msvc.html Method B poate imi explicati si mie ca la ....noobi u chiar nu reusesc sa fac cqa aceaesta lib sa functioneze.... "oi fi tandala" Edited by Purice`, 18 March 2006 - 15:22. |
#10
Posted 19 March 2006 - 15:05
ai scapat de o mare belea. nu mai trebuie sa compilezi tu sursele.
in varianta B librariile sint deja compilate si nu mai trebuie sa faci nimic. fi atent cum trebuie sa fac, concret si la obiect. 1. download. urmezi linkul tau si downloadezi din categoria Binary -> Microsoft Visual C++ 6 - zip, 7z, exe. fisierul se numeste allegro-msvc6-4.2.0.zip si il dezarhivezi intr-un folder, de exemplu: c:\allegro. dupa dezarhivare vei avea 3 subdirectoare: bin, include si lib. 2. setarea cailor pt compilare. deschizi proiectul tau in Visual C++ si te duci in Project Settings -> Project settings -> C/C++ -> Category: Preprocessor -> Additional Include Directories. aici introduci: c:\allegro\include. 3. setarea cailor si librariilor pt linkeditare. te duci in Project Settings -> Link -> Category: Input. in cimpul Object/library modules adaugi libraria de care ai nevoie. care librarie trebuie adaugata din cele fisiere? asta trebuie sa decizi tu. librariile cu _s sint varianta statica, adica varianta care ruleaza fara dll. apoi, alld.lib este versiunea de debug, alleg.lib este versiunea optimizata (release), iar allp.lib este versiunea cu profiling enabled. daca nu sti ce inseamna toate astea, alege pt inceput alld.lib pe care o treci in in cimpul Object/library modules. In cimpul Additional library path mai trebuie sa adaugi: C:\allegro\lib asta e tot. daca faci totul cum ti-am spus, n-ar trebui sa mai ai erori. daca mai intimpini greutati, revino cu mesajele de eroare. |
|
#11
Posted 22 March 2006 - 11:30
In primul rand iti multumesc ca ma ajuti!
inainte de ce mi-ai zis tu ... c:\documents and settings\purice\desktop\exhello.c(7) : fatal error C1083: Cannot open include file: 'allegro.h': No such file or directory (mi se pare normal) dupa ce mi-ai zis Compiling... exhello.c Linking... LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main Debug/exhello.exe : fatal error LNK1120: 1 unresolved externals Error executing link.exe. exhello.exe - 2 error(s), 0 warning(s) plus de asta dupa ce ies din proiect imi dispare ce am scris la preproceser..link..etc... daca mai compilez o data ....(dupa ce mi-au disparut alea) --------------------Configuration: exhello - Win32 Debug-------------------- Linking... exhello.obj : error LNK2001: unresolved external symbol __imp__readkey exhello.obj : error LNK2001: unresolved external symbol __imp__release_screen exhello.obj : error LNK2001: unresolved external symbol __imp__textout_centre_ex exhello.obj : error LNK2001: unresolved external symbol __imp__font exhello.obj : error LNK2001: unresolved external symbol __imp__gfx_driver exhello.obj : error LNK2001: unresolved external symbol __imp__acquire_screen exhello.obj : error LNK2001: unresolved external symbol __imp__clear_to_color exhello.obj : error LNK2001: unresolved external symbol __imp__screen exhello.obj : error LNK2001: unresolved external symbol __imp__makecol exhello.obj : error LNK2001: unresolved external symbol __imp__set_palette exhello.obj : error LNK2001: unresolved external symbol __imp__desktop_palette exhello.obj : error LNK2001: unresolved external symbol __imp__allegro_message exhello.obj : error LNK2001: unresolved external symbol __imp__allegro_error exhello.obj : error LNK2001: unresolved external symbol __imp__set_gfx_mode exhello.obj : error LNK2001: unresolved external symbol __imp__install_keyboard exhello.obj : error LNK2001: unresolved external symbol __imp__install_allegro exhello.obj : error LNK2001: unresolved external symbol __imp___WinMain LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main Debug/exhello.exe : fatal error LNK1120: 18 unresolved externals Error executing link.exe. exhello.exe - 19 error(s), 0 warning(s) Vreo idee? Uite codul!!! /* * Example program for the Allegro library, by Shawn Hargreaves. * * This is a very simple program showing how to get into graphics * mode and draw text onto the screen. */ #include <allegro.h> int main(void) { /* you should always do this at the start of Allegro programs */ if (allegro_init() != 0) return 1; /* set up the keyboard handler */ install_keyboard(); /* set a graphics mode sized 320x200 */ if (set_gfx_mode(GFX_AUTODETECT, 320, 200, 0, 0) != 0) { if (set_gfx_mode(GFX_SAFE, 320, 200, 0, 0) != 0) { set_gfx_mode(GFX_TEXT, 0, 0, 0, 0); allegro_message("Unable to set any graphic mode\n%s\n", allegro_error); return 1; } } /* set the color palette */ set_palette(desktop_palette); /* clear the screen to white */ clear_to_color(screen, makecol(255, 255, 255)); /* you don't need to do this, but on some platforms (eg. Windows) things * will be drawn more quickly if you always acquire the screen before * trying to draw onto it. */ acquire_screen(); /* write some text to the screen with black letters and transparent background */ textout_centre_ex(screen, font, "Hello, world!", SCREEN_W/2, SCREEN_H/2, makecol(0,0,0), -1); /* you must always release bitmaps before calling any input functions */ release_screen(); /* wait for a keypress */ readkey(); return 0; } END_OF_MAIN() |
#12
Posted 22 March 2006 - 14:06
vezi ca n-au cum sa-ti dispara setarile, decit daca nu salvezi proiectul.
prima eroare: LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main te duci in Project Settings -> Link -> Project Options. acolo dai scroll pina intilnesti o optiune /subsistem:console pe care o schimbi in /subsystem:windows dupa care ar trebui sa-ti mearga. daca iti continuare persista eroarea cu simbolul _main atunci creeaza un nou proiect Win32 Console si adauga acolo codul. in legatura cu celelalte erori, poate n-ai setat corect caile in tabul Link, cum ti-am zis in postul anterior. daca nu merge incearca si cu libraria alld_s.lib. daca tot nu merge, fa-i un zip cu tot workspace-ul si punel-l aici sa-l deschid si sa vad care sint problemele. Edited by hErr, 22 March 2006 - 14:07. |
#13
Posted 23 March 2006 - 00:33
merge....
am facut un project win32aplication si imi merge... acum nu imi mai ramane dacat sa incep sa citesc tutoriale bafta ... si inca o data multam ! |
#14
Posted 27 March 2006 - 12:01
salut
Am inca o problema.AM pus codul n fisier ... problema e ca atunci cand il rulez imi iese imediat din program si imi da Loaded 'ntdll.dll', no matching symbolic information found. Loaded 'C:\WINDOWS\system32\kernel32.dll', no matching symbolic information found. Loaded 'D:\Eu\g\Debug\alld42.dll', no matching symbolic information found. Loaded 'C:\WINDOWS\system32\user32.dll', no matching symbolic information found. Loaded 'C:\WINDOWS\system32\gdi32.dll', no matching symbolic information found. Loaded 'C:\WINDOWS\system32\advapi32.dll', no matching symbolic information found. Loaded 'C:\WINDOWS\system32\rpcrt4.dll', no matching symbolic information found. Loaded 'C:\WINDOWS\system32\ole32.dll', no matching symbolic information found. Loaded 'C:\WINDOWS\system32\dinput.dll', no matching symbolic information found. Loaded 'C:\WINDOWS\system32\msvcrt.dll', no matching symbolic information found. Loaded 'C:\WINDOWS\system32\winmm.dll', no matching symbolic information found. Loaded 'C:\WINDOWS\system32\ddraw.dll', no matching symbolic information found. Loaded 'C:\WINDOWS\system32\dciman32.dll', no matching symbolic information found. Loaded 'C:\WINDOWS\system32\dsound.dll', no matching symbolic information found. Loaded 'C:\WINDOWS\system32\version.dll', no matching symbolic information found. Loaded symbols for 'C:\WINDOWS\system32\MSVCRTD.DLL' Loaded symbols for 'C:\WINDOWS\system32\Syncor11.dll' Loaded 'C:\WINDOWS\system32\uxtheme.dll', no matching symbolic information found. al-main INFO: Allegro initialised (instance 1) The thread 0x720 has exited with code 0 (0x0). The thread 0x570 has exited with code -1 (0xFFFFFFFF). The program 'D:\Eu\g\Debug\g.exe' has exited with code -1 (0xFFFFFFFF). de ce imi apar astea?(eu aceste dll-uri in calculator) salut Am inca o problema.AM pus codul n fisier ... problema e ca atunci cand il rulez imi iese imediat din program si imi da Loaded 'ntdll.dll', no matching symbolic information found. Loaded 'C:\WINDOWS\system32\kernel32.dll', no matching symbolic information found. Loaded 'D:\Eu\g\Debug\alld42.dll', no matching symbolic information found. Loaded 'C:\WINDOWS\system32\user32.dll', no matching symbolic information found. Loaded 'C:\WINDOWS\system32\gdi32.dll', no matching symbolic information found. Loaded 'C:\WINDOWS\system32\advapi32.dll', no matching symbolic information found. Loaded 'C:\WINDOWS\system32\rpcrt4.dll', no matching symbolic information found. Loaded 'C:\WINDOWS\system32\ole32.dll', no matching symbolic information found. Loaded 'C:\WINDOWS\system32\dinput.dll', no matching symbolic information found. Loaded 'C:\WINDOWS\system32\msvcrt.dll', no matching symbolic information found. Loaded 'C:\WINDOWS\system32\winmm.dll', no matching symbolic information found. Loaded 'C:\WINDOWS\system32\ddraw.dll', no matching symbolic information found. Loaded 'C:\WINDOWS\system32\dciman32.dll', no matching symbolic information found. Loaded 'C:\WINDOWS\system32\dsound.dll', no matching symbolic information found. Loaded 'C:\WINDOWS\system32\version.dll', no matching symbolic information found. Loaded symbols for 'C:\WINDOWS\system32\MSVCRTD.DLL' Loaded symbols for 'C:\WINDOWS\system32\Syncor11.dll' Loaded 'C:\WINDOWS\system32\uxtheme.dll', no matching symbolic information found. al-main INFO: Allegro initialised (instance 1) The thread 0x720 has exited with code 0 (0x0). The thread 0x570 has exited with code -1 (0xFFFFFFFF). The program 'D:\Eu\g\Debug\g.exe' has exited with code -1 (0xFFFFFFFF). de ce imi apar astea?(eu aceste dll-uri in calculator) |
#15
Posted 27 March 2006 - 13:05
acesta este un acces ilegal la memorie cauzat de o gresala de programare.
trebuie sa rulezi in programul in debug mode, pas cu pas, pina identifici linia care da aceasta eroare. pt aceasta porneste programul cu F10. pt a urmari apelul functiilor in interiorul lor, folosesti F11. cu ocazia asta inveti comenzile debuggerului: Step Over, Step In, Step Out, Run to Cursor. mesajele legate de dll-urile alea, ignora-le. |
|
#16
Posted 27 March 2006 - 18:40
#include <stdio.h> #include <stdlib.h> #include <allegro.h> #define NUM_TILES 10 // number of tiles in the datafile #define TILE_SIZE 32 // tile size #define MAP_SIZE 14 // size of the map DATAFILE *datTiles; // tiles graphics unsigned char map[MAP_SIZE][MAP_SIZE]; // map data int currentTile; // current tile used to draw /******************************************************************************** ** * Just zero out all the entries in 2D array which holds map values * Call this function to create new map */ void newMap(void) { int i, j; for (i=0; i<MAP_SIZE; i++) for (j=0; j<MAP_SIZE; j++) map[i][j] = 0; } /******************************************************************************** ** * saves a map to file named: filename */ void saveMap(char* filename) { FILE *file; // open the file in write binary mode file = fopen(filename, "wb"); if (!file) return; // write the map data fwrite(map, sizeof(unsigned char), MAP_SIZE*MAP_SIZE, file); // never forget to close the file fclose(file); } /******************************************************************************** ** * load a map from file: filename * */ void loadMap(char* filename) { FILE *file; // open file in read binary mode file = fopen(filename, "rb"); if (!file) return; // read map data fread(map, sizeof(unsigned char), MAP_SIZE*MAP_SIZE, file); fclose(file); } /******************************************************************************** ** * Draw a map to the screen * using map 2D array * */ void drawMap(void) { int i, j; // loop counters int tile; // hide the mouse show_mouse(NULL); // iterate through map data for (i=0; i<MAP_SIZE; i++) { for (j=0; j<MAP_SIZE; j++) { tile = map[i][j]; // if tile is there draw it if (tile > 0) draw_sprite(screen, (BITMAP*)datTiles[tile].dat, i*TILE_SIZE, j*TILE_SIZE); // else just draw black rectangle else rectfill(screen, i*TILE_SIZE, j*TILE_SIZE, i*TILE_SIZE+TILE_SIZE, j*TILE_SIZE+TILE_SIZE, 0); } } // show mouse again show_mouse(screen); } /******************************************************************************** ** * if map area was clicked put tile there * using currentTile * */ void mapClicked(void) { int tile; // tile to be drawn int tileX; // tile in x direction to draw onto int tileY; // tile in y direction to draw onto // if no mouse button pressed exit function if (!mouse_b) return; // if mouse was clicked outside the map area exit function if (mouse_x >= TILE_SIZE*MAP_SIZE || mouse_y >= TILE_SIZE*MAP_SIZE) return; // if left button pressed draw the tile if (mouse_b & 1) tile = currentTile; // else erase tiles else tile = 0; tileX = mouse_x / TILE_SIZE; // x tile clicked tileY = mouse_y / TILE_SIZE; // y tile clicked map[tileX][tileY] = tile; // assign the value of the map to tile // and redraw the map drawMap(); } /******************************************************************************** ** * initialize editor. Load datafile with tiles and create new map * */ void initEditor(void) { currentTile = 1; // we start with tile #1 being drawn // now load the datafile datTiles = load_datafile("eddat.dat"); // if can't load datafile, give error message if (!datTiles) { printf("Error loading eddat.dat\n"); exit(-1); } newMap(); // create a new map } /******************************************************************************** ** * Start message loop which checks * for keypresses that control editor and mouse clicked for drawing * */ void startEditor(void) { // draw initial map drawMap(); while (1) { mapClicked(); // check if map was clicked // keys 1 to 0 change the currently used tile if (key[KEY_1]) currentTile = 1; else if (key[KEY_2]) currentTile = 2; else if (key[KEY_3]) currentTile = 3; else if (key[KEY_4]) currentTile = 4; else if (key[KEY_5]) currentTile = 5; else if (key[KEY_6]) currentTile = 6; else if (key[KEY_7]) currentTile = 7; else if (key[KEY_8]) currentTile = 8; else if (key[KEY_9]) currentTile = 9; else if (key[KEY_0]) currentTile = 10; // F1 pressed new map else if (key[KEY_F1]) { newMap(); drawMap(); } // F2 pressed save map else if (key[KEY_F2]) { saveMap("map1.map"); drawMap(); } // F3 pressed load map else if (key[KEY_F3]) { loadMap("map1.map"); drawMap(); } // ESC pressed exit program else if (key[KEY_ESC]) break; } } /******************************************************************************** **/ int main(int argc, char** argv) { allegro_init(); // initialize editor initEditor(); // we are going to use 640x480 graphics mode set_gfx_mode(GFX_AUTODETECT, 640, 480, 0, 0); // install timer, mouse and keyboard install_timer(); install_mouse(); install_keyboard(); // clear the screen to background color clear(screen); // make sure 0th entry in datafile is pallete set_pallete((RGB*)datTiles[0].dat); // display the mouse show_mouse(screen); // start processing events startEditor(); exit(0); // succesfully exit } END_OF_MAIN() uite codul... o sa incerc sa fac ce mi-ai zis .... bafta .... mai intreb daca nu reusesc ! |
#17
Posted 27 March 2006 - 23:40
purice, urasc sa fac debug pe codul altora. doar nu crezi ca eu sau altcineva o sa-ti faca debug la codul asta. mai ales ca trebuie instalate headere, librarii, etc, etc, ... cunosti toata povestea.
mai pune si tu osul la treaba. Edited by hErr, 27 March 2006 - 23:41. |
#18
Posted 28 March 2006 - 12:50
salut.... ai inteles gresit....eu de asta am pus codul...
normal ca incerc sa fal eu sa mearga... NU am inteles partea cu rulatul pas cu pas (cum adica ?) mie am dat pe butoanele alea de acolo( prima data cand fac asta) si imi arata la "END_OF_MAIN()" o nepotrivire nici nu stiu ce era aia... Daca esti bun sa-mi zici chestia aia rulatul pas cu pas ... numai bine |
Anunturi
▶ 1 user(s) are reading this topic
0 members, 1 guests, 0 anonymous users