Tammam Koujan

Welcome to my world

Archive for March, 2007

ملف خاص : القمة العربية

Posted by tammamkoujan on March 27, 2007

ملف خاص : القمة العربية

هذا الملف الخاص بمناسبة القمة العربية التي ستعقد في الرياض على اني كلي امل ان نشهد عرضا مسرحيا افضل من العروض السابقة
و ان تكون نتائج القمة فعالة و مليئة بالتنديد و الاستنكار و الشجب و الادانة
مع التأكيد على اسلوب الحوار “الراقي و البنّاء” لرأب الصدع و الشرخ
مع التنويه إلى ان اختلاف الاراء لا يفسد للود قضية فوجود 22 رأيا مختلفا لا يعني
انه لا يوجد توافق (ما عاذ الله) لكون الـ22 رأيا هي اراء حكيمة كلها كما ان المباحثات يمكن ان تستكمل على مائدة الطعام.

شعواط الأصم

مر (شعواط)الأصم

بالفتى( ساهي) الأصم

قال ساهي:كيف أحوالك…عم؟

قال شعواط :الى سوق الغنم

قال ساهي:نحمد الله …بخير

قال شعواط:أنا شغلي الغنم

قال ساهي:رضة في الركبة اليمنى

وكسر عرضي في القدم

قال شعواط:نعم

إقبل الشغل

فلاعيب بتحميل الفحم

قال ساهي: نشكر الله….لقد زال الالم

قال شعواط:بودي……..إنما شغلي أهم؟

لم لاتأتي معي أنت الى سوق الغنم ؟

قال ساهي:في أمان الله……عمي

إنني ماض الى سوق الغنم

************

الحوارات لدينا

هكذا تبدأ دوماً…وبهذا تختتم

إسمها الأصلي(شعواط وساهي)

واسمها المعروف رسمياً ( قمم )

———–
الشاعر : أحمد مطر

——————————–
وجدت هذا المقطع في مدونة الاخ ماشي صح و قد حصل عليه من مدونة ABOUD
شكرا لهما

Posted in مجرد رأي | 1 Comment »

طاولة غريبة

Posted by tammamkoujan on March 25, 2007

طاولة غريبة

أثناء ذهابي من العمل كنت امر من امام احد المحلات و قد وضع
هذا المحل طاولة غريبة الشكل , احببت ان اشارككم برؤية هذه الطاولة
فأخذت لها الصورة التالية:

Strange Table

Posted in صور | 5 Comments »

الربط مع قواعد البيانات في الدوت نت

Posted by tammamkoujan on March 17, 2007

الربط مع قواعد البيانات في الدوت نت
Data Access with .NET

بسم الله الرحمن الرحيم
ماذا ستتعلم من هذا الدرس :

مستوى الدرس : مبتدأ

لغة البرمجة : C# , VB.NET

مضمون الدرس : اذا كنت مبتدأاً يعلمك هذا الدرس واحدة من طرق الربط مع انواع مختلفة من قواعد البيانات

البداية :

عندما تكتب تطبيق قواعد بيانات فإنك أول ما ستحتاجه هو تحديد عبارة الاتصال بالقاعدة , و تختلف هذه العبارة باختلاف
نوع قاعدة البيانات التي تتعامل معها و نوع الاتصال الذي تقوم به مع القاعدة .
من خلال هذا الدرس سأعلمك واحدة من اسهل الطرق للاتصال بقاعدة البيانات و التي توفر لك طريقة سهلة و مريحة للإتصال
بمختلف أنواع قواعد البيانات . طبعا هناك طريقة أخرى سهلة جداً من خلال إضافة مكونات قواعد البيانات من لوح الادوات لكن بصراحة أنا شخصيا لا احب هذه الطريقة لأن الاتصال و التعامل مع البيانات من خلال الشيفرة يجعلني احس بسيطر و قدرة اكبر على التحكم بالبيانات.

هذا الدرس مطبق على :
- Microsoft Visual Studio .NET 2005
- Microsoft SQL Server 2000
- Microsoft Access 2003

مقدمة :

إذا كنت تبرمج برنامجا يعتمد على قواعد البيانات و إذا كنت كسولا مثلي فلربما ستسأل نفسك ألا يوجد طريقة بسيطة و سهلة تريحني من كتابة عبارة الإتصال التي ارتبط بها مع قاعدة البيانات , تهانينا ستجد هنا الطريقة السحرية التي طالما حلمت بها .
في دوت نت يمكنك الارتباط بقواعد البيانات من خلال فضائي الاسماء :
- System.Data.SqlClient : هذا الفضاء مخصص للتعامل مع قواعد بيانات Microsoft SQL Server .
- System.Data.OleDb : هذا الفضاء مخصص للتعامل مع بقية أنواع قواعد البيانات التي تدعم OLE مثل
Microsoft Access.
ملاحظة : بما ان SQL Server تدعم OLE فيمكنك التعمل معها من خلال الفضاء System.Data.OleDb لكن
الفضاء System.Data.SqlClient هو الافضل و الاسرع في التعامل مع SQL Server .

كبداية سريعة إنطلق مباشرة إلى سطح مكتبك (لا أقصد سطح مكتبك في الغرفة بل الذي في حاسبك) و انقر بزر الفأرة الأيمن في أي مكان فارغ فيه , ثم انقر على الخيار “New” ثم اختر مستند نصي “Text Document”
كما في الصورة التالية :

1.JPG

قم بتغيير اسم الملف إلى Connection.udl (عند تغيير اسم الملف تأكد من أنك غيرت لاحقته فعلا و إلا فإنه سيبقى ملفا نصيا )

عند تغيير اسم الملف ستظهر لك الرسالة التالية :

2.JPG

انقر Yes , ستتحول أيقونة الملف إلى الشكل التالي :

3.JPG

سنبدأ أولا بالاتصال مع قاعدة البيانات SQL Server 2000 , انقر على الملف , سفتح لك نافذة قد تكون مألوفة لك اذا كنت قد كتبت تطبيقات قواعد بيانات من قبل .
اذهب إلى الصفحة Provider:

4.JPG

قم باختيار Microsoft OLE DB Provider for SQL Server (يبدو انك قد لاحظت كلمة OLE في العبارة رغم
اننا قلنا بأنه لن نستخدم OLE في الاتصال بـ SQL Server ثق بي فقط و أكمل)
انقر على الزر Next , ستنتقل عندها إلى الصفحة Connection

5.JPG

قم بتحديد اسم السرفر الذي تتواجد عليه SQL Server ( في مثالنا هذا هو TAMMAM_PC )
ثم قم بتحديد طريقة الدخول للقاعدة (في المثال قمت باستخدام أمان ويندوز) , في الجزء الثالث و الأخير أنقر على
القائمة المنسدلة و قم بتحديد قاعدة البيانات التي تريد الاتصال بها (في هذا المثال استخدم قاعدة Northwindالمرفقة مع SQL Server كمثال) , الان كل شيء جاهز تقريبا انقر على الزر Test Connection اذا كان كل شيء صحيحا ستظهر لك الرسالة التالية :

6.JPG

انقر زر OK لتغلق الرسالة ثم زر OK لتغلق النافذة .

اذهب الان إلى Visual Studio .NET قم بإنشاء مشروع جديد (رغم أنني سأضع الشيفرة بالـ C# و الـ VB.NET إلا
ان الصور ستكون للمشروع المكتوب بالـ C# ) و قم بتسميته CreateConnection كما في الصورة :

7.JPG

قم بإضافة زر إلى النموذج و قم بتغيير خاصية الـ Text له إلى : SQL Server Test Connection كما في الشكل :

8.JPG

انقر بزر الفأرة الأيمن على النموذج و اختر View Code , قم بإضافة فضاء الاسماء System.Data.SqlClient
إلى البرنامج في الجزء العلوي من الشيفرة و ذلك لدعم SQL Server :

C# :

using System.Data.SqlClient;

VB.NET :

Imports System.Data.SqlClient

عد إلى واجهة التصميم و انقر على الزر ثم قم بكتابة ما يلي :

C# :

try
{
SqlConnection objConn = new SqlConnection();
objConn.Open();
objConn.ConnectionString = “”;
MessageBox.Show(“Hello” + (char)13 + ” I am Connected to SQL Server 2000″);
}
catch (Exception ex)
{
MessageBox.Show(“Can not Connect to the database “+ex.Message);
}

VB.NET :

Try

Dim objConn As New SqlConnection()
objConn.ConnectionString = “Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=Northwind;Data Source=TAMMAM_PC”
objConn.Open()
MessageBox.Show(“Hello” + vbCrLf + “I am Connected to SQL Server 2000″)
Catch ex As Exception
MessageBox.Show(“Can not Connect to the database ” + ex.Message)
End Try

الان نعود إلى ملف Connection.udl الذي أنشأناه في بداية هذا الدرس , قم بالنقر باليمين على الملف ثم اختر
Open With ثم قم بإختيار Notepad :

9.JPG

بدءاً من عبارة Integrated Security قم بنسخ السطر إلى نهايته (لاحظ اننا تجاهلنا العبارة Provider=SQLOLEDB.1; في
بداية السطر لأننا نتصل من خلال الفضاء System.Data.SqlClient و ليس من خلال
System.Data.OleDb رغم انه يمكنك تجاهلها بالنسبة لـ OLE أيضا لانه القيمة الافتراضية لكن من الفضل وضعها عند استخدامه)
و من ثم الصقه في الشيفرة عند objConn.ConnectionString في مثالنا سيكون بالشكل التالي :

C# :

objConn.ConnectionString = ” Integrated Security=SSPI;Persist Security
Info=False;Initial Catalog=Northwind;Data Source=TAMMAM_PC”;

VB.NET :

قم بضغط F5 سيتم تنفيذ البرنامج انقر على الزر و اذا مان كل شيء صحيحا ستظهر لك الرسالة التالية :

10a.JPG

الان انهينا ما يتعلق بالاتصال بـ SQL Server و ننتقل إلى الاتصال من خلال OLE

قم بإنشاء ملف Microsoft Access جديد , ثم قم بالنقر على الملف Connection.udl الذي أنشأناه اذهب إلى الصفحة
Provider و قم باختيار Microsoft Jet 4.0 OLE DB Provider انقر على الزر Next سيتم نقلك إلى الصفحة Connection قم بتحديد مسار القاعدة ثم انقر الزر Test Connection انقر OK ثم OK .

قم بإضافة زر جديد إلى البرنامج اكتب في خاصية Text للزر : OLE DB Test Connection
قم بإضافة فضاء الاسماء System.Data.OleDb إلى البرنامج في الجزء العلوي من الشيفرة و ذلك لدعم OLE :

C# :

using System.Data.OleDb;

VB.NET :

imports System.Data.OleDb

عد إلى واجهة التصميم و انقر على الزر الثاني ثم قم بكتابة ما يلي :
C# :

try
{
OleDbConnection objConn = new OleDbConnection();
objConn.ConnectionString = “”;
objConn.Open();
MessageBox.Show(“Hello” + (char)13 + “I am Connected to OLE DB”);
}
catch (Exception ex)
{
MessageBox.Show(“Can not Connect to the database ” + ex.Message);
}

VB.NET :

Try

Dim objConn As New OleDbConnection()
objConn.ConnectionString = “”
objConn.Open()
MessageBox.Show(“Hello” + vbCrLf + “I am Connected to OLE DB”)

Catch ex As Exception

MessageBox.Show(“Can not Connect to the database ” + ex.Message)
End Try

الان نعود إلى ملف Connection.udl الذي عدلنا الاتصال فيه , قم بالنقر باليمين على الملف ثم اختر
Open With ثم قم بإختيار Notepad :

11.JPG

بدءاً من كلمة Provider قم بنسخ السطر إلى نهايته , و من ثم الصقه في الشيفرة عند objConn.ConnectionString في مثالنا سيكون بالشكل التالي :
C# :

objConn.ConnectionString = @” Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Test.mdb;Persist Security Info=False”;

VB.NET :

objConn.ConnectionString = ” Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Test.mdb;Persist Security Info=False”

قم بتنفيذ البرنامج ثم اضغط الزر الثاني ستظهر لك الرسالة :

12.JPG

هكذا تكون تعلكت كيف تنشأ عبارة الاتصال مق قواعد بيانات SQL Server و OLE و بالتالي اصبح من السهل عليك ان تتوسع و تربط مع اي قاعدة بيانات تريدها

الشيفرة :

لتحميل شيفرة البرنامج :
CreateConnection.zip

كلمة أخيرة :

اتمنى ان تكون قد استفدت من الدرس , اذا كان عندك اية ملاحظات او اكتشفت اي خطأ أو كنت تملك معلومات اضافية قد تساعدني
اتمنى ان تراسلني و تخبرني بما عندك .

للمزيد من الدروس يمكنك زيارة مدونتي الإلكترونية http://tammamkoujan.wordpress.com/
اذا كنت ترغب بمراسلتي Tammam84@Yahoo.com
ملاحظاتك و استفساراتك مرحب بها على الدوام .

تمام كوجان في 17/03/2007
ُEmail : TammamKoujan@Gmail.com
يجوز نشر هذه المقالة أو أجزاء منها بشرط المحافظة على اسم الكاتب و ذكر المصدر

Posted in برمجة | 8 Comments »

إختراع خطير

Posted by tammamkoujan on March 15, 2007

إختراع خطير

الاختراع الذي سيحل اهم مشاكل البشرية
ينصح به خاصة للمبرمجين لتوفير الوقت و أتمتة المهام
ملاحظة : لا أعلم إن كان مرفق بـ SDK

Posted in اضحك, منوع | Leave a Comment »

إلتقط الصور باستخدام الجهاز الكفي من خلال برنامجك

Posted by tammamkoujan on March 14, 2007

إلتقط الصور باستخدام الجهاز الكفي من خلال برنامجك

ألم تفكر يوما بأن تستعيض ببرنامج الكاميرا ببرنامج اخر من كتابتك يتضمن بعض الأمور التي لا يوفرها البرنامج الأصلي او كنت كمبرمج تكتب برنامجا يتطلب تشغيل الكاميرا و التقاط الصور لهدف معين
سنتحدث في هذه المقالة عن تشغيل الكاميرا و التقاط الصور على أجهزة البوكت بي سي Pocket PC و الهواتف الذكية Smart Phones

أولا انشأ مشروع جهاز ذكي جديد في Visual Studio 2005 في هذه المقالة سننشأ مشروع Windows Mobile 5.0 Pocket PC

بعد إنشاء المشروع قم بإضافة مرجع لفضاء الاسماء Microsoft.WindowsMobile.Forms في المشروع و ذلك من خلال القائمة Project ثم النقر على Add Reference

ثم استخدام الفضاء كالتالي :

using Microsoft.WindowsMobile.Forms;

اضف إلى النموذج أداة صورة Picture و أداة زر Button
نضع في الزر الشيفرة التالية:

CameraCaptureDialog myCapture = new CameraCaptureDialog();
myCapture.Mode = CameraCaptureMode.Still;
myCapture.Resolution = new Size(160, 160);
myCapture.StillQuality = CameraCaptureStillQuality.High;
myCapture.ShowDialog();
string strFileName = “”;
strFileName = myCapture.FileName;
pictureBox1.Image = new Bitmap(strFileName);

للتحكم بالكاميرا يتم باستدعاء CameraCaptureDialog الخاص بنظام التشغيل
في الشيفرة السابقة نعتمد على CameraCaptureDialog لكنه لا يتيح لنا الحصول على الصورة مباشرة
عندما نشغل CameraCaptureDialog من خلال برنامجنا و نلتقط الصورة كما قلت لن نحصل
على الصورة الملتقطة مباشرة لكننا سنحصل على مسارها الذي حفظت فيه
ثم نحملها إلى برنامجنا

انتبه لأمر مهم توابع الكاميرا غير موجودة في Pocket PC 2003
لكنها موجودة في Windows Mobile 5.0 كما انها موجودة في Smart Phone 2003 فما بعد

لتحميل الشيفرة :CameraTest.zip

تمام كوجان في 15/03/2007
ُEmail : TammamKoujan@Gmail.com
يجوز نشر هذه المقالة أو أجزاء منها بشرط المحافظة على اسم الكاتب و ذكر المصدر

Posted in الأجهزة الكفية Pocket PC | 1 Comment »

عندما يصبح المدون قاتلا و القاتل مدوناً

Posted by tammamkoujan on March 12, 2007

عندما يصبح المدون قاتلا و القاتل مدوناً

بداية هذا الخبر كانت عند زيارتي لموقع قناة CNN الاخبارية و متابعتي لمقطع الفيديو الذي يتحدث عن القضية ثم تابعت الامر من خلال البحث على الانترنت.

كان الجو باردا كعادته في شهر شباط في ولاية كولورادو الامريكية لكن في المنزل 705 في منطقة وست بروم كانت النوافذ مفتوحة على غير العادة , و الجيران لم يرو صاحبة المنزل ليندا دام منذ ما يقرب الثلاثة اسابيع
و كانوا يسمعون ضوضاء موسيقا الحفلات عالية و يرون الشباب يغدون و يروحون.
و كانوا يشاهدون صديق تيس ابنة ليندا يتجول في سيارة الـAcura السوداء التي اشترتها لابنتها
ثم سرعان ما تغيرت الامور و بدأ الجيران يرون سيارات الشرطة تملئ المنطقة و المحققين يدخلون و يخرجون من المنزل ما الذي حدث ؟ علم الجيران ان جارتهم ليندا قتلت لكن كيف و لماذا ؟
بعد ايام كشفت الشرطة تفاصيل الحادثة لقد قتلت ليندا دام على يد صديق ابنتها و بعلم و مشاركة ابنتها
ففي الثالث من شهر شباط قام بريان غروف البالغ من العمر 17 عاما بخنق ام صديقته في غرفة نومها حتى فقدت وعيها ثم طعنها حتى الموت عدة طعنات في رقبتها و فمها .
كان سبب عملية القتل هذه هو ان تيس البالغة من العمر 15 عاما و صديقها بريان كانا يكرهان امها بسبب افراطها في شرب الكحول , بعد ان قام برايان بقتل ام صديقته احضر احد اصدقائه لمساعدته و نقلوها بحضور ابتها تيس و وضعوها في صندوق سيارة في الكراج, بعد ذلك استمرت حياة تيس و برايان بشكل عادي حيث عاشا معا في المنزل و اخذا يقيمان الحفلات إلى ان كشف امرهما بعد ثلاثة اسابيع .
رغم غرابة الجريمة التي حدثت إلا ان الغريب حقا هو انه كلا من تيس و صديقها برايان كانا يدونان و كل منهما عبر عن مشاعره و ما يدور في نفسه عبر مدونته الخاصة فكانا يدونان ما يجول في بالهما قبل ان يصبحا قاتلين و بعد عملية القتل بقيا يدونان
ففي الفترة قبل عملية القتل كانت مدونة تيس تعبر عن مزاجها المتعكر و عن محاولاتها لايقاف امها عن الشرب ففي التاسع عشر من شهر كانون الثاني كتبت في مدونتها :

“Current mood: discontent… Everyone knows the story of me and my mom… everyone knows how much I’ve tried to fix it my whole life… I could write a book about how confusing it is trying to please that woman… and trying to do whatever I can to get her to stop drinking.” Lyrics are quoted: “Smile, I’ma blow a hole in your neck…”

و في الرابع و العشرين من شهر كانون الثاني كتب برايان في مدونته :

“IF U WERE KILLED TOMORROW, I WOULDN”T GO 2 UR FUNERAL CUZ ID B N JAIL 4 KILLIN THE MOTHA (expletive) THAT KILLED U!”

و بعد ان تمت عملية القتل كانت تدويناتهما باسلوب و نفسية مختلفة
ففي 11 شباط كتب برايان في مدونته :

my baby…

I miss you,
i cant see you
touch you or feel you,
i wish it wasnt so,
but im so far away,
my heart has already broken,
cause i had to depart from you,
im here without you and i hate it,
where are you baby?
where is my love?
I wish you knew how much I love you,
I wish you knew how much I miss you,
I need you…

و بعد ساعات قليلة ردت تيس :

Baby I miss you too.
More than anything.
I hate you not being here,
And its hard to do everyday things without crying…
I miss you like crazy.
I love you baby.
We’ll be together soon!
I’m right here waiting for you baby.
Come home soon.
I love you.

و في 19 شباط كتب برايان في مدونته و قبل القبض عليه بأيام :

“i did things that i shouldnt have … / but i did them … /with my two hands … /i just want to drink a barrel of cyanide … to make this pain go away … its what i deserve for what i did … for those of you who dont know what i did/message me if you wish to know.”

القصة بمجملها غريبة ففتاة تساعد في قتل أمها ثم تمضي بقية الايام مع صديقها في المنزل
يقيمان الحفلات و يدعوان الاصدقاء و الام جثة هامدة ملقاة في الكراج
ثم يتضح ان القاتلين كانا يدونان كل ما يحدث معهما قبل و بعد الجريمة

رابط مدونة تيس :
http://www.myspace.com/harmonylala
رابط مدونة برايان :
http://www.myspace.com/blindian781

يمكنك متابعة تقرير الفيديو في موقع قناة CNN :
Murder in Colorado

يمكنكم متابعة القصة كاملة و بتفاصيل ادق على الروابط التالية :
Linda Damm Juergens murder
Murder, They Blogged
The Screams Painted on the Walls…

تمام كوجان في 12/03/2007
ُEmail : TammamKoujan@Gmail.com
يجوز نشر هذه المقالة أو أجزاء منها بشرط المحافظة على اسم الكاتب و ذكر المصدر

Posted in منوع | 2 Comments »

كاريكاتير

Posted by tammamkoujan on March 12, 2007

aksa

Posted in كاريكاتير | Leave a Comment »

مكون EAN 13 Barcode

Posted by tammamkoujan on March 7, 2007

مكون EAN 13 Barcode

بسم الله الرحمن الرحيم
EAN 13 Barcode

أقدم لكم مكون Ean13 Barcode لانشاء الباركود من نوع EAN13 و المستخدم على نطاق واسع في مختلف انواع المنتجات
هذا المكون قمت بكتابته في اواخر شهر اذار 2006 و لم تسنح لي الفرصة من وقتها لإكماله (ليس على قائمة اولوياتي حينها)
لكني حاليا بدأت بالعمل على نسخة احترافية و سوف اتابع في سلسلة مكونات الباركود وصولا إلى الانواع المعقدة مثل PDF417 لكني اظن ان النسخة الاحترافية الكاملة لن تكون مجانية
المكون الحالي مكتوب بالـ VB.NET لكن سيكون طقم الادوات القادم بالـ #C
المكون غير مكتمل تماما و لكن النواقص فيه بسيطة جدا فهو يحتاج إلى ضبط القياسات بدقة اكبر و ضبط قياس الاعمدة عند تغير قياس المكون إضافة لبعض الخاصيات المتممة و التوسعات لكنه بشكل عام يعمل و قد جربته حتى ان قارئ الباركود كان يلتقطه من على شاشة الكمبيوتر

طبعا المكون كتبته بنفسي و لم استعن إلا بالمراجع المتعلقة بقوانين الباركود
لتحميل الشيفرة :
MyBarcode.zip

تمام كوجان في 07/03/2007
ُEmail : TammamKoujan@Gmail.com
يجوز نشر هذه المقالة أو أجزاء منها و الاستفادة من الشيفرة المتاحة بشرط المحافظة على اسم الكاتب و ذكر المصدر

Posted in برمجة | 1 Comment »

دجاج حكيم

Posted by tammamkoujan on March 3, 2007

دجاج حكيم

بصراحة مشهد جميل جدا جدا
ليتنا نحن العرب نتصرف كهذا الدجاج

Posted in اضحك | Leave a Comment »

فكرة جميلة لشرطة الشارقة

Posted by tammamkoujan on March 2, 2007

فكرة جميلة لشرطة الشارقة

قامت الشرطة في امارة الشارقة بالقيام بعملية جميلة حيث انها وضعت سيارات مصابة
بشكل فظيع من جراء الحوادث في الساحات العامة و بجانب الحدائق
و ذلك حتى يرى السائقون نتيجة التهور و السرعة الزائدة فيعتبروا بغيرهم
قمت بتصوير احدى هذه السيارات و اليكم المشهد

Posted in منوع | 2 Comments »