الاول انت لازم تكون عارف كتير هن الانترنت و تكون على دراية كيفية تكوين الشبكة و تعرف كل شىء عن ال ports , data packet , ip
ثم بعد ذلك تتعلم كيفية عمل ال interface programming , client /server programming
وتكون البداية بعمل برنامج chat صغير
الاول انت لازم تكون عارف كتير هن الانترنت و تكون على دراية كيفية تكوين الشبكة و تعرف كل شىء عن ال ports , data packet , ip
ثم بعد ذلك تتعلم كيفية عمل ال interface programming , client /server programming
وتكون البداية بعمل برنامج chat صغير
حد فيكوا تعامل مع كارد دش فى linux
not me, not even in windows
و الجهل زاد فى البتاع, لا مقرى ولا منقول...
حابب أتعلم ++c بس كل ما أحط كود يطلع هذا الخطأ وأخدت كود نسخ لصق نفس الأشي
--------------------Configuration: Ex1 - Win32 Release--------------------
Compiling...
win32.cpp
E:\êõãíã çáãáúçè\drawing\examples1\1\win32.cpp(0) : fatal error C1033: cannot open program database 'e:\êõãíã çáãáúçè\drawing\examples1\1\release\vc60.idb'
Error executing cl.exe.
Ex1.exe - 1 error(s), 0 warning(s)
شو الحل
funny man
ياريت ترسل ال code و احنا نشوفه وكل واحد يقول رأيه
هدا الكود هو مثال من كتاب برمجة الأبعاد الثنائية و الثلاثية الأبعاد و شغل على مكتبة AGXD
#include <windows.h>
#include <windowsx.h>
#include <AGDX.h>
AGDXScreen* Screen; // The AGDXScreen object, every program must have one
LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM); //CALLBACK FUNCTION
//Start of WinMain
int WINAPI WinMain (
HINSTANCE hInstance, // handle to current instance
HINSTANCE hPrevInstance, // handle to previous instance
PSTR szCmdLine, // pointer to command line
int iCmdShow // show state of window
)
{
/* STEP #1 - Set up your variables ---------------------------------------------------------------------------------------
| 1
|
---------------------------------------------------------------------------------
*/
WNDCLASSEX wndclass; // The WNDCLASSEX structure contains window class information.
MSG msg; //The MSG structure contains message information from a thread's message queue.
HWND hWnd; //Windows program handle
static char szAppName[] = "AGDX example 1"; //Static string that holds applications name
/* STEP #2 - Set Elements of a "WNDCLASSEX" structure --------------------------------------------------------------------
| 2
|
---------------------------------------------------------------------------------
*/
wndclass.cbSize = sizeof (wndclass);
wndclass.style = CS_HREDRAW | CS_VREDRAW;
wndclass.lpfnWndProc = WndProc; //<---- Very Important. See Step #8
wndclass.cbClsExtra = 0;
wndclass.cbWndExtra = 0;
wndclass.hInstance = hInstance;
wndclass.hIcon = LoadIcon (NULL, IDI_APPLICATION);
wndclass.hIconSm = LoadIcon (NULL, IDI_APPLICATION);
wndclass.hCursor = LoadCursor (NULL, IDC_ARROW);
wndclass.hbrBackground = (HBRUSH) GetStockObject (WHITE_BRUSH);
wndclass.lpszMenuName = NULL;
wndclass.lpszClassName = szAppName;
/* STEP #3 - Register the "WNDCLASSEX" structure with the operating system -------------------------------------------------
| 3
|
---------------------------------------------------------------------------------
*/
if (!(RegisterClassEx (&wndclass)))
return FALSE;
/* STEP #4 - Now you can actually create the window -------------------------------------------------------------------------
| 4
|
---------------------------------------------------------------------------------
*/
hWnd = CreateWindowEx (
WS_EX_APPWINDOW, //Extended Window Style
szAppName, //Window Class Name
szAppName, //Window Caption
WS_OVERLAPPEDWINDOW, //Window Style
CW_USEDEFAULT, //Initial X Pos
CW_USEDEFAULT, //Initial Y Pos
CW_USEDEFAULT, //Initial X Size
CW_USEDEFAULT, //Initial Y Size
NULL, //Parent Window Handle
NULL, //Window Menu Handle
hInstance, //Program Instance Handle
NULL); //Creation Paramaters
/* STEP #5 - Display the window ---------------------------------------------------------------------------------------------
| 5
|
---------------------------------------------------------------------------------
*/
ShowWindow (hWnd, iCmdShow);
/* STEP #6 - Force an update to the window ----------------------------------------------------------------------------------
| 6
|
---------------------------------------------------------------------------------
*/
UpdateWindow (hWnd);
// Create the AGDXSreen object and set the resoultion
Screen = new AGDXScreen();
// Set the Screen resolution and nubmer of colors
Screen->CreateFullScreen(hWnd, 640, 480, 8);
// Load the palette from the tiles bitmap
Screen->LoadPalette("intro.bmp");
// Load the Bitmap to the back buffer
Screen->LoadBitmap("intro.bmp");
// Flip the back buffer to the front
Screen->Flip();
/* Step #7 - The WinMain function enters an infinite loop which is referred to as a windows "message pump" ------------------
| 7
|
---------------------------------------------------------------------------------
*/
while (TRUE)
{
if (!GetMessage (&msg, NULL, 0, 0))
return msg.wParam;
TranslateMessage (&msg);
DispatchMessage (&msg);
}
}
//End of WinMain
/* Step #8 - The windows callback function "WinProc" ------------------------------------------------------------------------
| 8
|
---------------------------------------------------------------------------------
*/
//Start of WndProc
LRESULT CALLBACK WndProc (HWND hWnd, UINT iMsg, WPARAM wParam, LPARAM lParam)
{
funny man
و هادي آخر فقرة
/* Step #1 WinProc - Define variables ---------------------------------------------------------------------------------------
| 9
|
---------------------------------------------------------------------------------
*/
/* Step #2 WinProc - The switch statement for handling windows messages -----------------------------------------------------
| 10
|
---------------------------------------------------------------------------------
*/
switch (iMsg)
{
case WM_KEYDOWN :
switch (wParam)
{
case VK_ESCAPE: //Exit on ESC or F12 keys
case VK_F12:
PostMessage (hWnd, WM_CLOSE, 0, 0);
return 0;
}
return 0;
//Basicly its the proper way to exit a program
case WM_DESTROY :
SAFE_DELETE(Screen);
PostQuitMessage (0);
return 0;
}
return DefWindowProc (hWnd, iMsg, wParam, lParam); //Any messages you dont handle get passed back for default processing
}
//End of WndProc
funny man
انا ليس عندى agdx.h
ياريت تبعت كل الملفات اللازمة بال agdx سواء كانت [ dll .h or .lib]
لان انا حاولت اعمل search عليهم فى النت و لم اجدهم فاعتقد انها مجموعة خاصة غير مطروحة على النت و لو كنت حصلت عليها من موقع ارسلى الlink
و شكرا
من سايت www.arabgames.com
بتدخل على تنزيل برامج كتاب برمجة الأبعاد الثنائية والثلاثية للكمبيوتر أدوات الكتاب بتلاقيها هناك
ما أعطيتك وصلة مباشرة لأنو لازم يكون عندك اكاونت
funny man
من الواضح انك قمت بنسخ الكود فقط و لم تنزل ال lib الخاصة بتلك الاوامر و التعريفات و ال classes الموجودة بالكود
انا دخلت على الموقع اللى انت ارسلته ووعملت new account و دخات لبرمجة الالعاب و هناك موجود 3 links لكن الكود اللى انت بعته مش فى و لا واحد منهم
لكن اللى اقرد اقوله ان الكود كتابته سليمة و ليس به اى اخطاء اساسية فقط ان لن يتعرف على المتغيرات و الاوامر الخاصة ب agdx
ارجو الرد لمحاولة الحل
popos, u didn't tell us, where do u work now, i think i need a bit of career advisory about programming market in egypt,f u r working n th field
و الجهل زاد فى البتاع, لا مقرى ولا منقول...
شوف يا امجد ربنا يكرمك ان شاء الله بالشغل فى هذا المجال لكن اللى اقدر اقولهولك اولا انا مهندس مدنى و كان من احلامى ان اشتغل فى مجال البرمجة بال c و ال assembly و للعلم كان فى مبرمجين ظهرو فى بداية التسعينات فى مصر و كانوا مهتميين بالبرمجة بال assembly . c ونمنهم من عمل فيروسات و اذكر منهم فيروس koko وعمله مهندس اسمه ادهم عثمان و كان عامل ال anti virus الخاص بالفيروس بتاعه و هذا الفيروس كان هبارة عن تطوير للفيروس natas
المهم اليوم على حسب ما ارى انه لامجال للبرمجة التى يوجد بها ابتكار فى مصر كما انه عدد المهتميين بعلوم الكمبيوتر قليل جدا المعظم مهتم بالملتيميديا و الالعاب و الجرافيك لكن البرمجة الفعلية قليلة جدا و ليس لها مجال للشغل فى مصر
كما ان معظم التدريبات التى تتم عن طريق الجهات الرسمية تأتى الشركات الأجنبية لتعلمك كيف تستخدم ليس كيف تبرمج و الدليل و اتحداك اذا قامت اى شركة من تلك الشركات بعمل دورات لل assembly or c
كلها تأتى و تعلمك البرامج التى تشتغل under windows فقط اى يكون جميع ما تنتجه مرتبط بالويندوز
و تكون انت عبد لنظام التشغيل ويندوز فلا تستطيع الاستغناء عنه
و لتتأكد ادخل موقع microsoft و انظر الى اسعار الدورات التعليمية اى لغة visual هى ارخص ثمن يليها c يليها assembly
و للأسف هنا فى مصر اصبح الجميع مستخدمين و ليس هناك من يبتكر
انا اتمنى ان كل من يريد ان يبرمج يستخدم c كى لا يعوقه شئ مهما اختلف النظام هو يستطيع ان يعمل
و ياريت يا امجد لو عثرت على مكان فى مصر مهتم فعلا بالبرمجة قولى لانى حتى الان امارس البرمجة حبا فيها و ليس لأى غرض مادى و لكن لو فى يبقى تمام
فعلآ, معاك حق..لكن أنا للأسف معرفش أماكن مهتمه بالبرمجه..لكن لو عرفت أكيد هقولك
lestin, i'll finish my exams tommorow insha2 allah, i think we should start planning the contest we were talking about, what do u think
و الجهل زاد فى البتاع, لا مقرى ولا منقول...
أنا متهيئلى إن qbasic دى إنقرضت دلوقتى خلاص..مع إن اللغه دى ليها معايا ذكريات(أول لغه أكتب بيها برنامج فى حياتى), أنا أعتقد إن pascal هتكون مناسبه ليه أكتر كبدايه, المشكله إن basic مفهاش functions, بتعتمد بشكل أساسى على ال goto و ده غلط جدا إن حد يتعلمه و هو بيتعلم البرمجه..مش عارف, أنا مرضتش أرد هناك علشان ملخبطهوش أكتر, لكن أنا رأيى أنه كان يبتدى ب pascal ,إنت ايه رأيك
و الجهل زاد فى البتاع, لا مقرى ولا منقول...
تمام لغة qbasic ليس بها function و لكن كل ما يريده فى البداية هو تعلم التسلسل المنطقى لكتابة الكود فى لغة سهلة ليس بها تعقيدات
والمهم فى اكثر من اقتراح وياريت لو عندك فكرة تقول
اولا ممكن نطرح فكرة برنامج و يتم السباق فيه لمدة 24 ساعة ثم يعرض كل واحد الكود بتاعه و نناقشه ونختار احسن كود
و ممكن نطرح مشكلة عامة فى البرمجة و محاولة حلها
و لكن نريد وضع قوانين و انا افرض فيها مثلا
-- الشخص الذى يطرح البرنامج المراد تنفيذه لا يشارك فى السباق و لكن يشارك فى المناقشة و ذلك لانه من الحتمى انه فكر فيه قبل الباقى
المهم لو انت تعرف اى حد مهتم خليه يشترك معانا
ولو موافق السؤال الاول عندى و انا مستعد لطرحه فقط نريد على الاقل عدد 3 متسابقين
لو كان ليك اى افكار اخرى قلها