برگزیده های پرشین تولز

اگر سوالي در زمينه برنامه نويسي دلفي داريد از من بپرسيد

وضعیت
موضوع بسته شده است.

littlerabbit

مدیر بازنشسته
کاربر فعال
تاریخ عضویت
13 جولای 2003
نوشته‌ها
678
لایک‌ها
6
سن
42
محل سکونت
Iran
ولی مشکل صفرهای سمت چپ تو کد دومی که حل شده بود!!!! یه خط بهش اضافه کردم که چک میکنه.مشکل دیگه ای هست؟؟
 

rmb_ali

Registered User
تاریخ عضویت
15 مارس 2003
نوشته‌ها
1,218
لایک‌ها
21
دستت درد نكنه من دقت نكرده بودم
 

meysam1162

کاربر تازه وارد
تاریخ عضویت
12 نوامبر 2004
نوشته‌ها
49
لایک‌ها
1
هان !!!!!
13.GIF
13.GIF
13.GIF
13.GIF
13.GIF
13.GIF
13.GIF
13.GIF
 

Kamix

کاربر تازه وارد
تاریخ عضویت
23 دسامبر 2004
نوشته‌ها
15
لایک‌ها
0
با سلام :
اگه كسي از دوستان به برنامه نويسي Multi Thread در دلفي آشنائي داره لطفا يه مختصري توضيح بدين‌ !

من يه موردي كه خودم باهاش برخورد داشتم رو ميگم كه نياز بيشتر مشخص بشه :
برنامه اي نوشته بودم كه بر حسب نياز كاربر لازم بود تقريبا 200 تا ركورد رو بعد از زدن دكمه ثبت در database ذخيره كنه !
اين كد چون در حلقه ميافتاد بسته به سرعت سيستم چيزي در حدود 40 ثانيه برنامه رو به حالت Not Responidng ميبرد ! اگه بلد بودم مالتي ترد بنويسم ميشد مثلا از يه Prpgress bar استفاده كرد كه در يه thread جديد مراحل انجام كار رو با درصد نشون بده تا كاربر بفهمه برنامه هنگ نكرده و داره كارشو انجام ميده ! اما چون progress bar هم جزئي از همين ترد در پردازنده محسوب ميشه در واقع استفاده اي نداره !
اگه دوستان اطلاعاتي دارن راهنمائي كنن !

در ضمن بعنوان يه همكار فكر نميكنم در فروم تخصصي با اين اسم و رسم و جايگاه ، جاي مناسبي براي تبليغ سايت هاي ديگر و حرف و حديث هاي اضافي وجود داشته باشه ....
 

rmb_ali

Registered User
تاریخ عضویت
15 مارس 2003
نوشته‌ها
1,218
لایک‌ها
21
البته دوستان متخصص حتما ميان و راهنمايي ميكنن ولي يه راه ساده اينه كه قبل از اينكه شروع به ثبت كنيد يه پيغام روي صفح بديد كه مثلا چند دقيقه يا 2 دقيقه صبر كنيد
 

littlerabbit

مدیر بازنشسته
کاربر فعال
تاریخ عضویت
13 جولای 2003
نوشته‌ها
678
لایک‌ها
6
سن
42
محل سکونت
Iran
در دلفی میتونید به راحتی یه Thread ایجاد کنید (با استفاده از شی TThread ) اما برای اینکه با Thread اصلی ارتباط داشته باشید هم راه هست. کافیه که از گزینه NEW تو منو گزینه Other و در آخر گزینه Thread Object رو انتخاب کتنید. اول اون توضیح داده (به صورت کامنت ) که چجوری میتونید مثلا یه Progress Barr رو تغییر بدید (با استفاده از تابع Syncronize )

یعنی یه تابع توی کلاس تعریف میکنید که مثلا یه آرگومان داره که میتونید مقداری که باید نشون بده بذارید این آرگومانو. فقط وقتی میخواید اینو فراخوانی کنید اینجوری مینویسید :
کد:
 Sybcronize(MyFunc(100))
 

arezae

کاربر تازه وارد
تاریخ عضویت
3 مارس 2003
نوشته‌ها
138
لایک‌ها
2
محل سکونت
Europe
به نقل از Kamix :
با سلام :
اگه كسي از دوستان به برنامه نويسي Multi Thread در دلفي آشنائي داره لطفا يه مختصري توضيح بدين‌ !

من يه موردي كه خودم باهاش برخورد داشتم رو ميگم كه نياز بيشتر مشخص بشه :
برنامه اي نوشته بودم كه بر حسب نياز كاربر لازم بود تقريبا 200 تا ركورد رو بعد از زدن دكمه ثبت در database ذخيره كنه !
اين كد چون در حلقه ميافتاد بسته به سرعت سيستم چيزي در حدود 40 ثانيه برنامه رو به حالت Not Responidng ميبرد ! اگه بلد بودم مالتي ترد بنويسم ميشد مثلا از يه Prpgress bar استفاده كرد كه در يه thread جديد مراحل انجام كار رو با درصد نشون بده تا كاربر بفهمه برنامه هنگ نكرده و داره كارشو انجام ميده ! اما چون progress bar هم جزئي از همين ترد در پردازنده محسوب ميشه در واقع استفاده اي نداره !
اگه دوستان اطلاعاتي دارن راهنمائي كنن !

در ضمن بعنوان يه همكار فكر نميكنم در فروم تخصصي با اين اسم و رسم و جايگاه ، جاي مناسبي براي تبليغ سايت هاي ديگر و حرف و حديث هاي اضافي وجود داشته باشه ....

در مورد برنامه نويسی MultiThread چند نکته هست که باید قبل از برنامه نویسی در نظر گرفت. اول از همه اینکه در مورد دسترسی به اشیاء موجود در صفحه باید دقت کرد که دسترسی همزمان چند Thread بطور همزمان باعث قفل شدن برنامه خواهد شد . چرا که سیستم عامل ویندوز همکام گردن دسترسی در مورد این نوع برنامه نویسی را به برنامه نویسی واگذار کرده است.

دوم اینکه وقتی شما در برنامه برای نمایش یک Progress Bar از Thread استفاده می کنید در حقیقت از این ProgressBar دو پروسس مختلف در یک زمان استفاده می کنند. یکی پروسس شما و دیگری پروسس ویندوز برای بروز رسانی صفحه نمایش.

و اما در مورد برنامه نویسی بهتر دیدم که نمونه سورس کدی را در اینجا نشان بدهم . البته شما براحتی می توانید از منوی فایل یک یونیت از نوع Thread ایجاد کنید که بخشهای مختلف یک Thread را درون آن آماده دارد.

procedure TProgressThread.Execute;
var i, j:Integer;
begin
ProgressThread1.FreeOnTerminate:=True;
Synchronize(UpdateForm)

end;​

تابع UpdateForm می تواند بر روی تمام اشیاء موجود در فرم شما کار کند و مقادیر آنها را تغییر دهد.

بخش مربوط به Synchronize با اسم تابعی صدا زده می شود که می خواهد بر روی فرم ما هر تغییر لازم را اعمال کند. این نوع صدا زدن تابع کمک می کند که برنامه مشکلی را که در اول این مطلب نوشتم پیدا نکند.



به نقل از Kamix :
در ضمن بعنوان يه همكار فكر نميكنم در فروم تخصصي با اين اسم و رسم و جايگاه ، جاي مناسبي براي تبليغ سايت هاي ديگر و حرف و حديث هاي اضافي وجود داشته باشه ....
لطفا بیشتر توضیح دهید ...

پیشنهاد می کنم برای موضوعات جدید یک عنوان جدید درست کنید و بعد سوال را مطح کنید. الان این عنوان چهار صفحه شده است و تعداد زیادی سوال و جواب در آن نوشته شده است.
اگر هر سوال بصورت جداگانه و با عنوان مناسب نوشته شود، راحتتر افراد دیگر می توانند سوال و جواب را پیدا کنند.


به مدیر این گروه پیشنهاد می کنم با هدایت سوالات جدید به یک عنوان جدید ، در بالا بردن کارآئی این گروه خوب کمک کند.
 

aebrs

کاربر تازه وارد
تاریخ عضویت
2 جولای 2005
نوشته‌ها
9
لایک‌ها
0
آقاي معلم
ضمن عرض سلام
استدعا دارد من را به يك PDF خوب يا مرجع ديگري در باره استفاده از SQL بعنوان بانك اطلاعات دلفي راهنمائي فرمائيد.
برنامه SQL سرور را نصب كرده ام و ديتا بيس و تيبل هاي خود را ساخته ام.
در BDE با تعيين ODBC/SYSTEM DSN يك ALAIS مناسب تعريف كرده ام كه آنرا فعال نموده و در DATABSE دلفي ميتوانم با آن ارتباط برقرار نمايم.
برنامه خود را با دلفي تهيه كرده و از DATABASE و ‏Ttable , Tquery و Tupdate sql براي ارتباط با بانك استنفاده كرده ام ولي از روي ايستگاه نتوانسته ام اين برنامه را اجرا و به بانك وارد شوم.
با استفاده از ADO و ADOTable نيز همين راه را انتخاب كردهام و همان مشكل را روي ايستگاه دارم
با استفاده از Dbexperss نيز نتوانسته ام نتيجه بگيرم.
از مقاله http://goftman.com/archive/t-28339.html هم نتوانسته ام نتيجه بگيرم.
البته من به دنبال آن هستم كه برنامه ام بر روي WINDOWS 2003 DATABASE SERVER نصب شده و بانك را به SQL SERVER / ATTACH كنم . و سپس بدون نياز به نصب هر نرم افزار اضافاه ديگري بر روي ايستگاهها بتوانم با ايجا يك ايك.ن برنامه را اجرا و به بانك دسترسي داشته باشم، كه نمونه اين برنامه را هم ديده ام.
فلذا مجددا خواهش مي كنم تا يك مرجع خوب اگر ميشناسيد معرفي كنيد و يا اگر نكته اي به ذهن شما ميرسد راهنمائي فرمائيد.
با تقديم احترام وتشكر پيشاپيش
[email protected]


1- بانك و تيبل ها را ايجاد كرده ام
2-برنامه را با اي دي او كانكشن به اس كيو ال وصل كردم.
3- برنامه رو ماشين اصلي اجرا مي شود و اطلاعات وارد بانك مي گردد.
4- برنام بر روي ساير ماشينها اجرا نمي شود و خطاي: بانك اس كيو ال در دسترس نيست يا گذر واژه اشتباه است را نشان داده سپس برنامه بدون اتصال اجرا مي شود
5- فقط روي سرور برنامه اس كيو ال را نصب كرده ام و نمي خواهم بر روي ساير ماشينها آنرا نصب كنم.
سوال: آيا نصب اس كيو ال صحيح نيست؟
آيا نوع كانكشن توي دلفي اشكال دارد:
ممنون
 

arezae

کاربر تازه وارد
تاریخ عضویت
3 مارس 2003
نوشته‌ها
138
لایک‌ها
2
محل سکونت
Europe
به نقل از aebrs :
آقاي معلم
ضمن عرض سلام
استدعا دارد من را به يك PDF خوب يا مرجع ديگري در باره استفاده از SQL بعنوان بانك اطلاعات دلفي راهنمائي فرمائيد.
برنامه SQL سرور را نصب كرده ام و ديتا بيس و تيبل هاي خود را ساخته ام.
در BDE با تعيين ODBC/SYSTEM DSN يك ALAIS مناسب تعريف كرده ام كه آنرا فعال نموده و در DATABSE دلفي ميتوانم با آن ارتباط برقرار نمايم.
برنامه خود را با دلفي تهيه كرده و از DATABASE و ‏Ttable , Tquery و Tupdate sql براي ارتباط با بانك استنفاده كرده ام ولي از روي ايستگاه نتوانسته ام اين برنامه را اجرا و به بانك وارد شوم.
با استفاده از ADO و ADOTable نيز همين راه را انتخاب كردهام و همان مشكل را روي ايستگاه دارم
با استفاده از Dbexperss نيز نتوانسته ام نتيجه بگيرم.
از مقاله http://goftman.com/archive/t-28339.html هم نتوانسته ام نتيجه بگيرم.
البته من به دنبال آن هستم كه برنامه ام بر روي WINDOWS 2003 DATABASE SERVER نصب شده و بانك را به SQL SERVER / ATTACH كنم . و سپس بدون نياز به نصب هر نرم افزار اضافاه ديگري بر روي ايستگاهها بتوانم با ايجا يك ايك.ن برنامه را اجرا و به بانك دسترسي داشته باشم، كه نمونه اين برنامه را هم ديده ام.
فلذا مجددا خواهش مي كنم تا يك مرجع خوب اگر ميشناسيد معرفي كنيد و يا اگر نكته اي به ذهن شما ميرسد راهنمائي فرمائيد.
با تقديم احترام وتشكر پيشاپيش
[email protected]

متاسفانه در این زمینه مطلب به فارسی ندارم .
شما توضیح ندادی که مشکل چی بود که نتوانستید برنامه را اجرا کنید. اگر دقیقا مطرح کنید و قدم به قدم جلو برویم می توان مشکل را حل کرد . از نظر آموزشی هم خیلی خوبه که قدم به قدم جلو بریم.
 

aebrs

کاربر تازه وارد
تاریخ عضویت
2 جولای 2005
نوشته‌ها
9
لایک‌ها
0
آقاي معلم
ضمن عرض سلام
استدعا دارد من را به يك PDF خوب يا مرجع ديگري در باره استفاده از SQL بعنوان بانك اطلاعات دلفي راهنمائي فرمائيد.
برنامه SQL سرور را نصب كرده ام و ديتا بيس و تيبل هاي خود را ساخته ام.
در BDE با تعيين ODBC/SYSTEM DSN يك ALAIS مناسب تعريف كرده ام كه آنرا فعال نموده و در DATABSE دلفي ميتوانم با آن ارتباط برقرار نمايم.
برنامه خود را با دلفي تهيه كرده و از DATABASE و ‏Ttable , Tquery و Tupdate sql براي ارتباط با بانك استنفاده كرده ام ولي از روي ايستگاه نتوانسته ام اين برنامه را اجرا و به بانك وارد شوم.
با استفاده از ADO و ADOTable نيز همين راه را انتخاب كردهام و همان مشكل را روي ايستگاه دارم
با استفاده از Dbexperss نيز نتوانسته ام نتيجه بگيرم.
از مقاله http://goftman.com/archive/t-28339.html هم نتوانسته ام نتيجه بگيرم.
البته من به دنبال آن هستم كه برنامه ام بر روي WINDOWS 2003 DATABASE SERVER نصب شده و بانك را به SQL SERVER / ATTACH كنم . و سپس بدون نياز به نصب هر نرم افزار اضافاه ديگري بر روي ايستگاهها بتوانم با ايجا يك ايك.ن برنامه را اجرا و به بانك دسترسي داشته باشم، كه نمونه اين برنامه را هم ديده ام.
فلذا مجددا خواهش مي كنم تا يك مرجع خوب اگر ميشناسيد معرفي كنيد و يا اگر نكته اي به ذهن شما ميرسد راهنمائي فرمائيد.
با تقديم احترام وتشكر پيشاپيش
[email protected]


1- بانك و تيبل ها را ايجاد كرده ام
2-برنامه را با اي دي او كانكشن به اس كيو ال وصل كردم.
3- برنامه رو ماشين اصلي اجرا مي شود و اطلاعات وارد بانك مي گردد.
4- برنام بر روي ساير ماشينها اجرا نمي شود و خطاي: بانك اس كيو ال در دسترس نيست يا گذر واژه اشتباه است را نشان داده سپس برنامه بدون اتصال اجرا مي شود
5- فقط روي سرور برنامه اس كيو ال را نصب كرده ام و نمي خواهم بر روي ساير ماشينها آنرا نصب كنم.
سوال: آيا نصب اس كيو ال صحيح نيست؟
آيا نوع كانكشن توي دلفي اشكال دارد:
ممنون
 

kimiya63

کاربر تازه وارد
تاریخ عضویت
3 آگوست 2005
نوشته‌ها
1
لایک‌ها
0
سلام
من می خواستم بدونم اگه که بخوام دلفی را تحت شبکه یاد بگیرم کیو باید ببینم
از چه کتابی باید استفاده کنم؟
 

littlerabbit

مدیر بازنشسته
کاربر فعال
تاریخ عضویت
13 جولای 2003
نوشته‌ها
678
لایک‌ها
6
سن
42
محل سکونت
Iran
این پست زیادی شلوغ شده. میتونید برای هر سوال یه تاپیک جدید ایجاد کنید هم بهتر جواب میگیرید هم بهتره! ممنون از همه!
 
وضعیت
موضوع بسته شده است.
بالا