تبليغاتX
..: رقص دانش :..

blofa

حسین

blofa

http://blofa.blogfa.com

..: رقص دانش :..

..: رقص دانش :..

..: رقص دانش :..

بیوگرافی هرکی بخوای و آموزش و ترفند موبایل نرم افزار سخت افزار اینترنت امنیت و دانلود برنامه و آهنگ

..: رقص دانش :..

ترفند فرستادن sms با بلوتوث نوکیا 6630
با سلام برای فرستادن sms با استفاده از بلوتوث به قسمت IN BOX مسیج های خود می رویم و sms مورد نظر را باز می کنیم بعد آنرا forward می کنیم ونشان گر را به قسمت نوشتن پیام می آوریم و با نگه داشتن کلید مارک (مداد) نشان گر را تا انتهای پیام می آوریم تا تمام متن انتخاب شود و در همان حالت که کلید مارک را نگه داشته ایم کلید سمت چپ کلید چهار جهتی (کپی)را فشار می دهیم تا عمل کپی انجام گیرد بعد از این برنامه خارج می شویم و در منوی گوشی برنامه notes که حتما در گوشی شما وجود دارد را باز می کنیم و new note را انتخاب می کنیم صفحه خالی مشاهده می شود .
در این قسمت با فشار دادن کلیدسمت راست کلید چهار جهتی(کپی) عمل کپی صورت می گیرد .تمام شد حالا با رفتن در قسمت options همین برنامه پیام خود را با بلوتوث برای گوشیهای نوکیا دارای برنامه note ارسال کنید.
+ نوشته شده در سی ام بهمن 1385ساعت توسط حسین |
ویندوز Vienna نسل بعد از ویستا میباشد
شرکت مایکروسافت در نظر دارد تا نگارش بعدی از سیستم عامل خود را در سال 2009 میلادی با نام Vienna منتشر سازد.

هنوز بسته های ویندوز ویستا در قفسه های محصولات جدید فروشگاه ها قرار دارند که کمپانی مایکروسافت خبر از نسخه بعدی از سیستم عامل خود می دهد. هنوز هیچ خبری مبنی بر امکانات این نسخه و دیگر جزئیات آن منتشر نشده است. شرکت مایکروسافت ویندوز ویستا را در حدود 5 سال بعد از انتشار ویندوز XP به بازار ارائه کرد و در طرح خود برنامه ریزی کرده است که نسخه بعدی از سیستم عامل خود با نام Vienna را در سال 2009 میلادی منتشر سازد.

بنابراین ویندوز Vienna تنها دو سال بعد از ویستا منتشر خواهد شد و در واقع مایکروسافت قصد دارد تا تاخیر انتشار ویستا را با منتشر کردن سریعتر Vienna جبران نماید.

مایکروسافت می گوید: "ما قصد داریم قطعه های تکمیل شده فناوری های گوناگون را مخلوط کنیم و احتمال می دهیم که فناوری جدیدی را معرفی کنیم. هنوز نمی دانیم بزرگترین تفاوت Vienna با Vista چه خواهد بود! شاید یک رابط کاربری جدیدتر! هنوز خیلی زود است تا در مورد ابزارهای آن صحبت کنیم ولی در ماه های آینده در این مورد بیشتر خواهید شنید."

منبع خبر: WinBeta.Net

+ نوشته شده در بیست و هشتم بهمن 1385ساعت توسط حسین |
برنامه منشی تلفن موبایل

 

Mobisophy Interactive Voice Call Master v1.50 منشی تلفنی قدرتمند
منشی تلفنی قدرتمند سازگار با اکثر گوشی هایی که از سیستم عامل سیمبیان استفاده می کنند با قابلیت های فراوان.

برخی از ویژگیهای برنامه:
-کنترل تماسهای تلفنی بطور کاملا هوشمند
-دارای ۷ پروفایل ویژه : Accept- IVR-Send busy tone-Reject+Send SMS-Divert calls to-Record conversation secretly-Mute the ringer برای تماسهای شما
-قابلیت دریافت تماس و ضبط آن (به همراه منشی پاسخگوی کامل)
-قابلیت فرستادن بوق اشغال برای همه یا لیست سیاه (با عملکرد عالی و سرعت بالا)
-قابلیت برنامه ریزی و کنترل لیست سیاه و سفید
-قابلیت Divert مکالمات به صورت جزیی و کلی و یا با انتخاب لیست مورد نظر
-قابلیت برقراری تماس در موعد مقرر و IVR ویژه برای اعلام تبریک
-قابلیت ضبط مکالمات تلفنی بصورت اتوماتیک
-قابلیت کنترل و برنامه ریزی پیشرفته روی نحوه ی کارکرد در برقراری هر تماس
-قابلیت scheduler که توسط آن می توانید بطور منظم و سر وقت های دلخواهتان پروفایل مورد نظر را تغییر دهید.
-قابلیت استفاده از SMS به عنوان پاسخگو
-قابلیت اجرای خودکار در هنگام روشن شدن گوشی
-قابلیت نمایش indicator روی صفحه اصلی
-قابلیت Hide برنامه و نیز در هنگام کار کمترین حجم ممکن از حافظه را می گیرد
-قابلیت صبر قبل از IVR ها
-نمایش تماسهای رد و بدل شده
-قطع اتوماتیک IVR بعد از قطع مکالمه
-دارای یک موتور قوی و پرسرعت برای کنترل تماسها

و بالاخره سازگاری کامل با گوشیهای:
Nokia 3230/6260/6600/6620/6630/6670/6680/6681/6682/7610/N70/N90
Panasonic X700/X800

 

 

 

توجه : پس از پایان نصب برنامه روی گوشی خود یک پیام روی صفحه گوشی خواهید دید که در آن کد Register برنامه نوشته شده... شما باید فورا از روی آن کد یادداشت بردارید و در هنگام اجرای برنامه در قسمت Register فقط یکبار این کد را به برنامه بدهید تا برنامه بطور کامل رجیستر گردد.

 

 

+ نوشته شده در بیست و هفتم بهمن 1385ساعت توسط حسین |
نرم افزارهای جدید برای گوشی موبایل
 

یک برنامه فوق العاده برای چت بین دو گوشی بلوتوث دار ... در ضمن گوشی مقابل شما هم باید این برنامه رو نصب کنه .

دانلود

 

Calendar

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

دانلود

 

Dictionary_EN_TO_FA

بهترین و قوی ترین دیکشنری تحت جاوا ( انگلیسسی به فارسی )

دانلود

 

Dictionary_FA_To_EN

بهترین و قوی ترین دیکشنری تحت جاوا ( فارسی به انگلیسی )

دانلود

hidemecam

برنامه عکس گرفتن به صورت مخفی ... برای گوشی های سونی اریکسونی که با Silent کردن هم صدای شاتر دوربینشون قطعه نمیشه خیلی مفیده ... حتی صدای Auto Focus رو هم قطع می کنه ...

دانلود

MatraxBench

یک برنامه بسیار مفید برای تست فنی گوشی ... با این برنامه خیلی خیلی راحت می تونید یک گوشی رو از لحاظ فنی تست بکنید و ببینید که هنگ یا مشکلات دیگه داره یا نه ...

دانلود

Quran_java

قرآن تحت جاوا

دانلود

wmplayer

یک مدیا پلیر بسیار زیبا و قوی برای گوشی های سونی اریکسون ... اگه از مدیا پلیر خود گوشی خسته شدید این برنامه خیلی به دردتون می خوره .

دانلود

 یک اجرا کننده موسیقی و تصویر بسیار خوب

اين هم يك نرم افزار پلاير براي گوشي شما اين نرم افزار داراي امكانات بسيار زيادي است از جمله امكان Play Stop و رقص نور و امكانات ديگر كه در عكس نرم افزار مشخص است.

 دانلود - با حجم 2.20 مگابايت 

 

+ نوشته شده در بیست و هفتم بهمن 1385ساعت توسط حسین |
ارسال sms فارسی

تا حالا این مورد براتون اتفاق افتاده که بخواید برای دوستتون یک SMS اونم از نوع فارسی براشون بزنید؟
این هم یک نرم افزار برای فرستادن فارسی SMS در گوشی هایی که فارسی ندارند برای نصبش به ترتیب نصب توجه کنید.
در ابتدا فایل اصلی را در memory نصب کنید سپس فایل کرک را در حافظه اصلی خود گوشی نصب نمایید.

 

دانلود

 

+ نوشته شده در بیست و هفتم بهمن 1385ساعت توسط حسین |
ارسال ایمیل صوتی از طریق نرم افزار Outlook

یکی از توانمندی هایی که نرم افزار Microsoft Outlook برخوردار است و اکثر کاربران از آن بی خبرند ، قابلیت ارسال ایمیل صوتی یا Voice Mail است. با استفاده از این روش شما میتوانید یک پیغام صوتی را ظبط کرده و برای فرد مقابل ارسال کنید. سپس او میتواند پیغام شما را به شکل صوتی دریافت کند.

برای این کار:
ابتدا نیاز است تا پیغام صوتی خود را ضبط کنید. بدین منظور میتوانید از Recorder خود ویندوز استفاده کنید. از منوی Start وارد All Programs شده ، سپس از شاخه Accessories و سپس Entertainment بر روی Sound Recorder کلیک کنید. اکنون از طریق میکروفون پیام خود را بخوانید و توسط برنامه ضبط و ذخیره سازی کنید. حجم فایل صوتی کم خواهد بود.
اکنون نرم افزار Outlook را اجرا کنید.
وارد صفحه مربوط به ارسال ایمیل شوید. اکنون از نوار بالا و منوی Insert روی قسمت File کلیک کنید. حالا فایل صوتی خود را انتخاب کنید و روی دکمه Insert کلیک کنید.
حال میتوانید متن نامه را نیز وارد کرده و ایمیل را ارسال کنید.


اکنون پیام شما همراه فایل صوتی به شکل Voice Mail برای فرد مورد نظر ارسال میشود. در صورتی که خود فرد دریافت کننده نیز از برنامه Outlook و امثالهم استفاده کند به محض مشاهده ایمیل میتواند پیغام صوتی را بشوند. در غیر این صورت پیغام صوتی به شکل یک فایل پیوست برای فرد مورد نظر قابل دریافت است.


+ نوشته شده در بیست و ششم بهمن 1385ساعت توسط حسین |
به کیبورد سیستم تان جان تازه ای ببخشید!

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


مراحل سرویس:

ابتدا کامپیوتر را خاموش کنید. سپس کیبورد را از کامپیوتر جدا کنید و آنرا به پشت برگردانید و تمامی پیچهای آنراباز کنید. سعی کنید در کنار دستتان ظرفی باشد که پیچها را درون آن بیندازید تا گم نشود. سپس قاب روی کیبورد را به آرامی و با دقت بردارید و مراقب باشید تا کلیدها از روی قاب جابجا نشوند، اکثر کیبوردها بعد از باز کردن پیچهایشان بوسیله خارهایی چفت می باشند، این خارها در کنار کیبورد وجود دارد، سعی کنید آنها را به آرامی باز کنید تا دو سطح کیبورد آزاد شود، این کار را به دقت انجام دهید تا این خارها نشکند.سپس قاب محافظ صفحه کلید راباز کنید. دقت کنید معمولا این قاب توسط پیچهایی به بدنه متصل می باشند. بعد از باز کردن پیچها امکان دارد باز هم قاب باز نشود. در بعضی از کیبوردها علاوه بر پیچ ، چفتهای پلاستیکی نیز وجود دارند که مانع از باز شدن صفحه محافظ می شوند آنها را با دقت آزاد کنید.
اکنون پنبه ای را به الکل سفید آغشته کرده و دو سطح مدار صفحه کلید را به آرامی تمیز کنید. بسیار احتیاط کنید که به مدارها آسیبی نرسانید. بعد از تمیز کردن،برد مربوطه را با پنبه خشک تمیز کنید تا اگر جرمی بجا مانده از بین برود و باعث قطع ارتباط دو سطح مدار نشود. توجه داشته باشید که در بعضی از موارد بعد از تمیز کردن مدار باز هم مشکل کماکان باقی می ماند.
در اکثر این موارد اتصال مدار قطع شده است، این امر بیشتر زمانی اتفاق می افتد که مایعات داخل کیبورد ریخته شده باشد. اکنون پا را فراتر می گذاریم و در صورتی که محل قطع اتصال دیده نشود با یک اهمتر مدار قطع شده را پیدا می کنیم. توضیح این کار ساده است. اهمتر را بر روی حالت اتصال کوتاه قرار دهید. در این حالت در صورتیکه هر دو سر اهمتر را به هم بزنید بوق اتصال کوتاه شنیده می شود. ابتدا یک سر اهمتر را به مدار کلید قطع شده بزنید و با سر دیگر آن مدار را تا انتها دنبال کنید در صورتیکه در هر کجا بوق اتصال شنیده نشد آن قسمت از مدار قطع شده است.
در بازار الکترونیک، ماژیکهایی وجود دارند( خیلی شبیه به خود کار غلط گیر) که قادرند اینگونه قطع شدگی ها را ترمیم کنند. با استفاده از آنها اتصال بین دو نقطه را بر قرار کنید. برای اطمینان مجددا با اهمتر چک کنید.سپس ریبون و محل اتصال آن به کیبورد را با اسپرس خشک تمیز کنید.در صورت نداشتن ماژیک فوق از یک رشته سیم نازک جهت بر قرار کردن اتصال بین دو نقطه قطع شده استفاده کنید. به وسیله چسب نواری (چسب شیشه ای) دو سر سیم را به ابتدا و انتهای محل قطع شدگی متصل کنید.

در انتها نیز کلیدها و قاب بدنه کیبورد را تمیز کنید، دقت داشته باشید که قاب و کلیدها کاملا خشک شده باشند. درصورتیکه کمی آب داخل کلیدها یا بدنه باقی بماند باعث از بین رفتن مدار کیبورد می شود. اکنون کیبورد را به دقت بسته و آن را چک کنید. امیدوارم مشکلات بر طرف شده باشد.

به نقل از ماهنامه رایانه خبر

+ نوشته شده در بیست و ششم بهمن 1385ساعت توسط حسین |
10 نكته پيش از استفاده از ویندوز ويستا

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


۱- آيا سخت‌افزار كامپيوتر و يا شبكه داخلي سازمان شما امكان پشتيباني ويندوز ويستا را دارد؟
ويستا بسيار مجهز و مفيد است ولي شايد از يك نظر بسيار نامرغوب باشد و آن نياز بالاي اين سيستم عامل به سخت‌افزار قوي و سنگين است. مشخصا سخت‌افزار مورد نياز براي اجراي سيستم عامل ويستا در مقايسه يا سيستم‌هاي عامل قبلي ويندوز اختلاف زيادي دارد. يعني سخت‌افزار مورد نياز براي اجراي اين سيستم عامل بايد بسيار قوي و پرسرعت باشد.
در واقع براي اجراي اين سيستم عامل نياز به دو گروه سخت‌افزار جداگانه است: يك گروه سخت‌افزاري مورد نياز براي اجراي سيستم عامل "Vista Capable" و ديگري براي اجراي "Vista Premium Ready". اين در حالي است كه براي اجراي "Premium Ready" نياز به پردازش‌گر 1 گيگاهرتز و حافظه RAM حداقل يك گيگا بايت و كارت گرافيكي با كيفيت بسيار بالا است. البته سخت افزار مورد نياز براي اجراي "Capable" اندكي پايين‌تر و ارزان‌تر است.
بنابراين قبل از اينكه براي استفاده از سيستم عامل ويستا در سازمان خود برنامه‌ريزي كنيد شما بايد سخت‌افزار مورد نياز براي اجراي اين سيستم عامل را از وب‌سايت «راهنماي سخت‌افزار مورد نياز براي اجراي سيستم عامل ويستاي مايكروسافت» بررسي كنيد.

2- كدام نگارش ويستا را بايد در شبكه داخلي سازمان خود استفاده كنيد؟
انتخاب نگارش درست ويندوز XP براي شبكه داخلي كسب و كار شما شايد كار بسيار آساني باشد. چهار نگارش از اين سيستم عامل در دسترس است: نگارش ويژه كامپيوترهاي خانگي ويندوز XP، نگارش حرفه‌اي، نگارش ويژه لب‌تاپ‌ ويندوز XP و نگارش Media Center.
اگر بخواهيد از ويندوز XP در شبكه داخلي سازمان خود استفاده كنيد نگارش‌هاي اولي و آخري حذف خواهند شد يعني اين نگارش‌ها در شبكه قابل استفاده نيستند. (البته نگارش Media Center نسخه 2004 قابل استفاده است ولي نسخه 2005 اين نگارش قابل استفاده در شبكه‌هاي داخلي نيست).
مشخصا از آن‌جايي كه نگارش ويژه لب‌تاپ ويندوز XP فقط در لب‌تاپ‌ها مورد استفاده قرار مي‌گيرد استفاده از اين نگارش در شبكه داخلي يك شركت كارايي چنداني نخواهد داشت. پس تنها انتخاب ممكن براي استفاده از ويندوز XP در شبكه داخلي يك كسب و كار استفاده از نگارش حرفه‌اي اين سيستم عامل است.
اما در مورد ويندوز ويستا وضعيت كمي پيچيده‌تر است. در حال حاضر پنج نگارش زير براي ويستا وجود دارد:
Home Basic، Home Premium، Business، Enterprise و Ultimate.
درست است كه شما از نگارش‌هاي Home ويندوز ويستا در شبكه داخلي كسب و كار خود استفاده نمي‌كنيد اما مطمئناٌ در مورد انتخاب سه نگارش بعدي يعني Business، Enterprise و Ultimate براي شبكه داخلي خود اطمينان كافي نداريد.
نگارش Business ويستا تا حدودي قابل مقايسه با نگارش حرفه‌اي ويندوز XP است و نگارش Enterprise يك سري امكانات و ويژگي‌هاي بيشتري مانند BitLocker Drive Encryption يعني رمز‌دار كردن اطلاعات ذخيره شده بر روي هاردديسك ( يك لايه امنيتي اضافي‌ براي شبكه‌هاي لب‌تاپ‌ها)، امكانات سازگاركننده نرم‌افزارهاي نصب‌شده، SUA (زير سيستم‌هايي براي برنامه‌ها و نرم‌افزارهاي تحت يونيكس) و سيستم پشتيباني پيشرفته چندزبانه و ... را نسبت به نگارش Business ويستا دارا است.
نگارش Ultimate يك مجموعه بسيار كامل است كه در واقع كليه ويژگي‌ها و امكانات ساير نگارش‌هاي ويستا حتا Media Center را دارد كه شايد از نياز شما براي شبكه داخلي بسيار فراتر باشد.

3- مجوز استفاده از ويندوز ويستا
مايكروسافت در سيستم عامل جديد خود نگارش Enterprise را اضافه كرده است كه فقط براي كسب و كارهايي كه عضو Software Assurance يا Microsoft Enterprise Agreement باشند قابل دسترسي و استفاده است.
امكان جديد ديگري كه مايكروسافت ارايه داده است امكان به روز كردن ويندوز ويستا در هر زماني است كه شايد براي برخي كسب‌وكارهاي كوچك بسيار مفيد باشد. اين برنامه امكان به روز كردن برخي نگارش‌هاي ويندوز ويستا به نگارش‌هاي بالاتر را در هر لحظه‌اي براي خريداران فراهم مي‌سازد. براي مثال شما مي‌توانيد نگارش Home Basic را به نگارش Home Premium و يا نگارش Business را به Ultimate تبديل كنيد.

4- سازگاري برنامه‌ها و نرم‌افزارهاي مورد استفاده در سيستم عامل ويندوز ويستا
مهم‌ترين عامل براي پيشرفت كار يك كسب و كار نرم‌افزارها و برنامه‌هاي ويژه‌اي است كه آن كسب‌وكار براي انجام كار خود نيازمند آن است.
بنابراين براي كسب‌وكارها اجراي مناسب و بدون دردسر نرم‌افزارها اولويت و ارجحيت بيش‌تري نسبت به سيستم عامل مورد استفاده دارد. از اين رو در طراحي يك سيستم عامل مهم‌ترين نكته‌اي كه بايد مورد توجه قرار گيرد اين است كه اين سيستم عامل امكان اجراي همه نرم‌افزارها و برنامه‌هاي كامپيوتري را بدون مشكل و دردسر براي كاربران فراهم آورد.
ساختار ويندوز ويستا به شكلي است كه مي‌تواند تمام نرم‌افزارهايي را كه در نگارش‌هاي قبلي سيستم عامل ويندوز قابل استفاده هستند پشتيباني و ساپورت كند. مايكروسافت يك برنامه جديد با نام Application Compatibility Toolkit ارايه داده است كه كاربران را در تشخيص نرم‌افزارهايي كه مي‌تواند در اين سيستم عامل مورد استفاده قرار گيرد كمك مي‌كند و همچنين مشخص مي‌كند كه كدام برنامه‌ها براي اجرا در ويستا نياز به به‌روز كردن دارند.
همچنين شما در اين سيستم عامل مي‌توانيد از فناوري‌هايي مانند Virtual PC ، Virtual Server و Terminal Services براي سازگار كردن نرم‌افزارهاي مورد نياز خود با ويستا استفاده كنيد.
با اين حال شما بايد نرم‌افزارها و برنامه‌هاي مورد نياز و حياتي كسب و كار خود را مشخص كنيد و سازگاري آن را با ويندوز ويستا امتحان كنيد و اگر اين برنامه‌ها در ويستا قابل اجرا نمي‌باشند براي استفاده از نرم‌افزارهاي مشابه و يا ارتقاي نرم‌افزار موجود برنامه‌ريزي كنيد.

5- دسترسي به شبكه و اينترنت
تبديل سيستم عامل شبكه به ويندوز ويستا شايد سبب شود كه شما پروتكل اينترنت خود را به IPv6 تغيير دهيد. ويستا پشتيباني بسيار مناسبي از پروتكل جديد اينترنت را داراست. براي ويندوز XP و همچنين ويندوز Server 2003، استفاده از IPv6 نياز به نصب پروتكل جداگانه‌اي دارد در حالي كه TCP/IP در ويندوز ويستا و سرور لانگهورن قابليت پشتيباني توام IPv4 و IPv6 به صورت پيش‌فرض دارا هستند.
دلايل بسيار زيادي براي تغيير از IPv4 به IPv6 وجود دارد. تغيير به IPv6 نه تنها باعث بهبود امنيت IP مي‌شود بلكه سبب افزايش كارايي در استفاده از امكانات صوتي و تصويري در برنامه‌هاي اينترنتي نيز مي‌گردد

6- نياز به ويندوز ويستا؟
شايد شما نخواهيد و يا نيازي نباشد كه همه كامپيوترهاي شبكه داخلي سازمان خود را يك مرتبه به سيستم عامل ويستا ارتقاء دهيد. در حقيقت زمان زيادي براي ارتقاي كليه كامپيوترهاي يك شبكه به سيستم عامل ويستا وجود دارد و نيازي نيست كه اين كار در يك مرحله انجام پذيرد.
البته اين بدان معنا نيست كه ارتقاي كامپيوترها بايد به صورت تصادفي صورت گيرد. شما بايد مشخص كنيد كه كدام كاربر مي‌تواند از امكانات جديد ويستا بيش‌ترين استفاده و سود را ببرد و يا كدام كاربر نياز به امكانات امنيتي پيشرفته ويستا در سازمان شما دارد. به هر حال شما بايد اولويت‌هاي خود را براي ارتقاء كامپيوترهاي شبكه به سيستم عامل ويندوز مشخص نماييد.
كامپيوترهايي كه براي اجراي برنامه‌هايي مانند نرم‌افزار Word و يا Excel مورد استفاده قرار مي‌گيرند مي‌توانند از سيستم عامل قبلي خود استفاده كنند.

7- آيا كارمندان شما آماده استفاده از اين سيستم عامل هستند؟
ملاحظاتي مانند ميزان هزينه، تغيير سخت‌افزارها و بنيان IT يك شركت شايد مشخصه‌هايي باشند كه شما در هنگام تغيير سيستم عامل شبكه كسب‌وكار خود مورد توجه قرار دهيد. اما عامل مهمي كه نبايد فراموش شود كارمندان شما هستند. تعداد بسيار كمي از كاربران كامپيوتر از فناوري‌هاي جديد استقبال مي‌كنند و علاقه زيادي براي يادگيري و استفاده از فناوري‌هاي جديد را ندارند. در واقع ذات بشر به نوعي است كه در مقابل هر تغييري مقاومت مي‌كند، حتا اگر اين تغيير به نفع او باشد و سبب بهبود كارها شود.
ارتقاي به يك سيستم عامل جدديد هميشه نياز - ترفندستان - به برگزاري دوره‌هاي آموزشي براي كارمندان و كاربران آن را دارد. به ويژه براي سيستم عامل ويستا كه امكانات و ويژگي‌هاي بسيار جديدي دارد كه شايد آموزش آن براي افراد كم‌سواد‌تر بسيار سخت و زمان‌بر باشد.
بسيار مهم است كه كاربران و كارمندان خود را براي استفاده از اين سيستم عامل آموزش مناسب دهيد. آموزش بايد به ميزاني باشد كه كار كردن با اين سيستم عامل را براي آن‌ها آسان سازد. به عنوان مثال شما مي‌توانيد به آنها اجازه دهيد كه كاربران از فرمت classic ويندوز كه آشنايي بيشتري با آن دارند استفاده نمايند.

8- پشتيباني از كاربران و كارمندان در استفاده از سيستم عامل ويستا
براي ارتقاي سيستم عامل به ويستا تنها آموزش كارمندان كافي نيست بلكه شما بايد از امكانات و فناوري‌ها و همچنين دستياران خود براي پشتيباني كاربران در هنگام استفاده از اين سيستم عامل استفاده كنيد. چرا كه در ابتدا اين كاربران در هنگام استفاده به چندين سوال و مشكل برخورد مي‌كنند كه بايد تمهيدات لازم براي رفع آن‌ها فراهم شود.
به هر حال آن‌ها براي اينكه بتوانند آموزش كافي داشته باشند و در زمينه استفاده ازاين سيستم عامل خبره شوند به صورت مشخص نياز به كار كردن بيشتر از حد طبيعي با اين سيستم عامل و گذارن زمان كافي براي يادگيري عملي آن دارند.
شما بايد بلافاصله بعد از ارتقاي شبكه خود به چند نفر را به عنوان پشتيبان اين سيستم عامل به صورت موقت استخدام و از وجود آن‌ها براي آموزش و رفع اشكال كارمندان خود استفاده نماييد.

9- حفظ داده‌هاي ارزش‌مند
اگر همه چيز به خوبي پيش رود بعد از ارتقاء شبكه شما داده‌هاي ارزشمند شما سالم خواهند ماند. اما اگر همه چيز به خوبي پيش نرود چه اتفاقي مي‌افتد؟ اساسي‌ترين راه و شايد بهترين راه اين است كه شما از داده‌هاي ارزشمند خود بك‌آپ بگيريد. بنابراين شما براي حفظ داده‌ها و اطلاعات ارزشمند كسب و كار خود بايد به صورت مرتب از آن‌ها بك‌آپ بگيريد. اين امر نياز به ذخيره‌سازي دوباره اين اطلاعات براي اطمينان از صحيح كار كردن آنها در هنگام نياز باشد.

10- هزينه اين كار واقعا چقدر است؟
زماني كه شما ملاحظات بالا را در نظر گرفتيد مي‌توانيد ميزان هزينه لازم براي ارتقا سيستم عامل شبكه خود را محاسبه كنيد. فراموش نكنيد كه هزينه اين كار بسيار بالاتر از پرداخت مجوز استفاده از اين سيستم عامل است. اين هزينه شامل هزينه لازم براي ارتقاء سخت‌افزاري شبكه‌، هزينه ارتقاء نرم‌افزارهاي مورد استفاده و يا جايگزيني نرم‌افزارهاي جديد و نگارش‌هاي جديد، هزينه تغيير ساختار و پروتكل شبكه (در صورت امكان‌پذير بودن)، هزينه كارمندان و مشاوراني كه براي اين امر بايد استخدام نماييد، هزينه آموزش كارمندان(با در نظر گرفتن اين موضوع كه زماني كه صرف آموزش آن‌ها مي‌شود سبب عقب افتادن از كارها و وظايف كاري آن‌ها نيز مي‌شود)، هزينه آموزش پشتيبانان و كارمندان IT و هزينه‌ ساير عمليات مانند بك‌آپ‌گيري و ... است.
اگر شما يك تخمين درستي از هزينه‌ها داشته باشيد مي‌توانيد در مورد ارتقاء شبكه خود به سيستم عامل ويستا تصميم درست بگيريد و در نتيجه شما مي‌توانيد در مورد استفاده از سيستم عامل ويندوز XP يا ويندوز 2000 و يا جايگزيني آن با ويندوز ويستا انتخاب درستي داشته باشيد.

(به نقل از پارس آنلاین - CnetNews)

+ نوشته شده در بیست و ششم بهمن 1385ساعت توسط حسین |
ترفند هایی از گوشی های سونی اریکسون

امتیازاتی که بعد از این ترفند نصیب گوشیتون میشه به این شرح هست . استفاده از حالت والکمن که در گوشی w800 وجود داره  شما میتونید با یک بار شارژ 30ساعت به موسیقی گوش بدین ،  استفاده از حالت flight (خاموش کردن سیم کارت در هنگام استفاده از موبایل) ،داشتن صدای قویتر بلندگو گوشی به نسبت قبل ، مدیا پلیر پرقدرت و جدید ، افزایش کیفیت فیلم برداری از 15 فریم به 17 فریم ( تبدیل درایور دوربین به w900/w910)
در ضمن هر کاری که از طریق این متن آموزشی بر روی گوشیتون انجام بدین نتیجش پایه خودتونه !!! و حتی ممکنه گوشیتون رو غیر قابل استفاده بکنید! پس مطالب رو بدقت بخونید چون من هیچ مسئولیتی رو قبول نمیکنم .

این آموزش فقط در مورد گوشی های K750 و W800 امتحان شده من بقیه رو تست نکردم
اول باید نرم افزار Far Manager رو داونلود کنین. از اینجا
دوم باید پلاگین های سونی اریکسن رو داونلود کنین. از اینجا
 اینم لازمه Far Manager 1.7 development Pack از اینجا

بعد محتویات پوشه پلاگین رو تو مسیر فولدر \Far\Plugins\ folder نرم افزارFar Manager قرار بدین یعنی فولدر SEFP رو تو فولدر پلاگین های فار منیجر میذارین . وقتی Far Manager رو اجرا می کنین این صفحه رو می بینین که با کلید Tab میتونین بین دو تا ستون منتقل بشین. هر کدوم از این ستون ها برای هر گوشی اتصال یافته استفاده میشه ( تصویر مربوط )
کاربرد کلید ها: F5 کپی ، F8 پاک کردن ، F10 ذخیره و خروج ، F4 ویرایش ، F2 جدید ،در ستون اول با استفاده از کلید Alt+F1 منو رو باز می کنین ( تصویر مربوط )
 و توی منو SEFP رو انتخاب می کنین که این پنجره میاد:( تصویر مربوط )
 برای اتصال یادتون باشه که درایورهای گوشی و کابل رو قبلا باید نصب کرده باشین! و کابل باید به کامپیوتر وصل باشه ولی نباید به گوشی وصل باشه و ضمنا گوشی هم خاموش باشه ، بعد رو Enter the Matrix کلیک می کنین و در حالی که کلید C رو نگه داشتین کابل رو به گوشی وصل می کنین تا وقتی که پیغام عوض بشه و اون موقع کلید C رو رها می کنین. حالا برنامه به گوشی متصل شده و شما باید این صفحه رو ببینین:( تصویر مربوط )
FS رو برای فایل های سیستم انتخاب می کنین و Enter رو می زنین و فهرستی از فایل های درون گوشی رو می بینین که با کلید های بالا و پایین می تونین انتخاب و با Enter واردشون بشین کلید Alt+F2 منوی ستون سمت چپ رو برای انجام عملیات مشابه بر روی یه گوشی دیگه برای شما باز می کنه که میتونین یه W800 تو این ستون داشته باشین و کل اطلاعات موجود در گوشی رو توی K750 کپی کنین که در این صورت یه W800 با قیافه K750 دارین
خیلی خیلی مهم:
یادتون نره باید برگردید به شاخه اصلی فایل های سیستم یعنی همون جایی که اول وارد شدین تو همین صفحه بازم بازگشت رو که بزنین این پنجره میاد که :( تصویر مربوط )
 باید به SHUTDOWN جواب YES داده و خارج بشین. در غیر اینصورت گوشی غیر قابل استفاده میشه! و گوشی رو برای چند ثانیه آزاد بذارین و بعد روشنش کنین

افزایش فضای مورد نیاز برای Sms ها از 201 در گوشی K750 تا سقف 11130
با ورود به منو اصلی طبق روشی که بالا گفتم وارد فولدر ifs میشین:( تصویر مربوط ) 
بعد فولدر settings و آخر messaging
ifs > setting > messaging
وارد که شدین این فایل رو پیدا می کنین pref_store.txt و روی اون کلید F4 رو می زنین تا وارد ویرایش گر بشه و این متن رو بصورت پیش فرض می بینین:( تصویر مربوط ) 
این متن رو با این یکی عوض کنید: tpa/  :( تصویر مربوط ) 
بعد کلید F2 رو زده و سپس F10
آخر سر بطور کامل خارج می شین و ارتباط رو بطور کامل Shut down می کنید. برای اطمینان از حجم فضای اضافه شده می تونین از نرم افزار My Phone Explorer استفاده کنید و تو قسمت Other - Memory Status میتونین بفهمین که چقدر به حافظه مسیج های شما اضافه شده از 201 بصورت پیش فرض به 11130 افزایش پیدا می کنه که البته این میزان تو گوشی های مختلف بسته به حجم خالیشون فرق می کنه ولی تو همین حدوداس

آموزش قطع کردن صدای شاتر دوربین یا عوض کردن آن
مثل دفعه های قبل وارد برنامه می شین
و این مسیر رو میرین
tpa/preset/system/sound/
اینجا 5 تا صدا هست که به دوربین مربوطه
یعنی اینا:
cameraburst.3gp
cameraburst.mid
camerafocus.3gp
camerashutter.3gp
cameratimer.mid
از هر کدوم که خوشتون نمیاد اول یه کپی روی هاردتون بذارین بعد پاکش کنین یا یه صدای هم فرمت و هم حجم و هم نام جای اون بذاری

Hybrid K750 / W900 Camera
این فایل همراه درایور دوربین رو تبدیل میکنه به درایور هیبرید این دو تا گوشی کیفیت عکس ها امتحان شده و افزایش داشته مهمتر افزایش کیفیت فیلم برداریه که به 17 فریم رسیده. درایور های دیگه هم هست منتها این بهترینشونه
درايور
فایل رو باید تو این مسیر کپی کنید: FS\ifs\settings\camera
از درایور خود گوشی یه بک آپ بگیرین

 بالا بردن کیفیت صدای پخش آهنگ و زنگ
برای تبدیل کیفیت پخش صدای W800 و K750 به کیفیت پخش W810 ، برای اینکار فایل همراه رو اکسترکت کرده و توی این مسیر کپی کنین
FS\ifs\settings\acoustic
یادتون نره از برنامه کامل خارج بشین و همینطور بک آپ . حالا از صدای W810 لذت ببرین
Download

___________________________________________________
پی نوشت :
از اونجای که سوالات در مورد این آموزش زیاده و من وقت کافی برای جواب دادن به همه این سوالات رو ندارم ، کتابی الکترونیکی رو که تهیه کردم رو معرفی می کنم تو این کتاب این آموزشی که خودم نوشتم و چند آموزش دیگر درباره گوشی های سونی اریکسون به صورت کامل بیان شده
از آموزش های دیگه ای تو این کتاب هست میشه به
- تغییر منوی اصلی گوشی
- منوهای جدید برای کا 750 و دبلیو 800
- اسکین برای مدیا پلیر کا 750 و دبلیو 800
- نحوه آپدیت کردن گوشی های سونی اریکسون
- تغییر اندازه فونت و  تایپ با اندازه کوچک برای اس ام اس
- طریقه log  گرفتن با داوینچی
- طریقه تبدیل صدای زنگ به صدای مدیا پلیر
- روش تبدیل brown به red
- روش فلش کردن گوشی های k750 و w800
- منوی باتری گوشی های k750 و w800
- روش نصب patch بر روی w800 و k750
- اضافه کردن زبان فارسی به گوشی 
- دستورات و کدهای مخفی در w800
- و...

این کتاب 35 صفحه ای رو میتونید با حجم 2150 کیلو بایت از اینجا دانلود کنید
امیدوارم در این کتاب به سوالاتی که داشتین برسین .

پی نوشت 2:
اونای که با فلش مشکل داشتن و گوشی در هنگام تبدیل درخواست فایل فلش می کرد این فایل رو واسه دانلو میذارم دانلود کنید
USBFlash

+ نوشته شده در بیست و یکم بهمن 1385ساعت توسط حسین |
My Computer -- بهترین برنامه برای مرور فایل ها
سلام       خوبید خوشید سلامتید   الهی صد هزار مرتبه شکر   

یه برنامه فوق العاده براتون نوشتم برید حالشو ببرید

My Computer ویندوزتون رو دیگه از رو صفحه Desktop پاک کنید

چون با داشتن این برنامه با سرعت نور ( 10 برابر سرعت مای کامپیوتر) میتونید بین فایل هاتون حرکت کنید و فایل هاتون رو ببینید . Back کنید New Folder بسازید و کلاً کارهایی که تو Windows Explorer یا My Computer میشه انجام داد رو با سرعت چندین برابر میتونید انجام بدید

ولی امکانات جالب دیگه ای هم براش گذاشتم به عنوان مثال شما با کلیک راست وسط برنامه کل چیزای ControlPanel رو میتونید به راحتی باز کنید

با کلیک راست میتونید Make New Folder کنید

یه ساعت قشنگ داره که به راحتی زمان رو با ثانیه میخونید

میتونید رنگ پشت صقحه و رنگ آیکون هاتون رو به راحتی عوض کنید

میتونید با کلیک رو یه دکمه که گذاشتم کامپیوتر رو خاموش ری استارت یا استندبای کنید

میتونید ببینید که تو این فولدری که الان هستید چند تا آیتم وجود داره

اما این قابلیت دیگه فوق العادس : میتونید با کلیک رو یه دکمه CD Rom رو باز کنید و با کلیک رو یه دکمه دیگه CD Rom رو ببندید (دیگه نمیخواد دو ساعت بری دکمه باز بسته کردن سیدی رام بزنی )

زیر دکمه Close برنامه یه جاش نوشتم    i    روش کلیک کنید ‼

امکانات دیگه ای هم داره که دیگه تعریف نمی کنم تا خودتون ببینید

حجمش خیلی کمه و دو سوت دانلود میشه از دستش ندید که ضرر کردید

اگه قابلیت خاصی دوست دارید به برنامه اضافه شه در قسمت نظرات مطرح کنید

دانلود برنامه 359 کیلو بایت (همش!)

 

+ نوشته شده در نوزدهم بهمن 1385ساعت توسط حسین |
کدهای مخفی موبایل
براي دستيابي به شماره نسخه نرم افزار ، تاريخ ويرايش آن و نوع سازگاري GSM مي توانيد از كد #0000#* استفاده كنيد. پس از وارد كردن اين كد ، اطلاعاتي به صورت زير براي شما نمايش گذاشته مي شود :
V04.51
26-03-98
NSE-1

خط اول بيانگر شماره نسخه نرم افزار ، خط دوم نشانگر تاريخ ويرايش نرم افزار و خط آخر نمايانگر نوع سازگاري GSM مي باشد (به دليل اينكه " سازگاري GSM " داراي مبحث گسترده اي است و تا حدودي تخصصي مي باشد ، لزا از توضيح آن در اين مقاله صرفنظر مي گردد).

3) پردازش سيگنال:
تلفن هاي همراه NOKIA داراي قابليت منحصر به فردي براي تغيير در نحوه پردازش سيگنال مي باشند. به اين ترتيب كاربر مي تواند به دلخواه كيفيت مكالمه را افزايش دهد و يا اينكه به عمر شارژ باطري خود بيافزايد. براي اين منظور تلفن هاي همراه NOKIA داراي دو ويژكي EFR و HFR مي باشند.

Enhanced Full Rate) EFR) : با فعال نمودن اين ويژگي ، كيفيت مكالمه شما افزايش مي يابد. علت اين امر استفاده از تكنولوژي فشرده سازي جديد ASELP (Algebraic Code Excitation Linear Prediction) مي باشد. اين تكنولوژي سبب افزايش كيفيت صدا با همان نرخ تبادل بيت در تكنولوژي قديمي LPC-RPE (Linear Prediction Coding with Regular Pulse Excitation) مي شود. با توجه به اينكه در هر دو تكنولوژي از نرخ تبادل ۱۳ كيلو بيت استفاده مي شود ، لزا اكثر شبكه هاي GSM با اين تكنولوژي جديد سازگار مي باشند. قابل توجه است كه پس از فعال نمودن اين قابليت ، به دليل افزايش پردازش بر روي سيگنال ، نياز به انرژي بيشتري مي باشد ، لزا در حدود ۵ درصد از عمر شارژ باطري شما كاسته مي شود كه البته در مقابل افزايش كيفيت مكالمه نرخ قابل توجهي به شمار نمي آيد و مي توان از آن صرفنظر كرد. براي استفاده از ويژگي EFR كافي است كه كد #3370#* را بر روي دستگاه خود وارد كنيد. در اين هنگام دستگاه تلفن شما به طور اتوماتيك خاموش شده و سپس دوباره روشن مي گردد. از اين لحظه به بعد موبايل شما از ويژگي EFR بهره مند مي باشد. براي غير فعال كردن اين ويژگي مي توانيد از كد #3370# استفاده كنيد. قابل ذكر است كه اگر تلفن همراه خود را خاموش كنيد ، اين ويژگي غير فعال مي شود و نياز به فعال سازي دوباره آن خواهيد داشت. استفاده از EFR به كاربران توصيه مي گردد.

(Half Rate Mode) HFR : با فعال نمودن اين ويژگي ، از كيفيت مكالمه شما كاسته شده و در عوض به ميزان ۳۰ درصد به عمر شارژ باطري شما افزوده مي گردد. استفاده از اين ويژگي تنها زماني توصيه مي گردد كه شارژ باطري تلفن شما بسيار محدود مي باشد و لذا نيازمند آن مي باشيد كه در مصرف باطري صرفه جويي كنيد. براي فعال نمودن اين ويژگي تنها كافي است كه كد*#4720#روي تلفن همراه خود وارد نماييد. در اين هنگام دستگاه تلفن شما به طور اتوماتيك خاموش شده و سپس دوباره روشن مي گردد. از اين لحظه به بعد موبايل شما از ويژگي HFR بهره مند مي باشد. براي غير فعال كردن اين ويژگي مي توانيد از كد #4720# استفاده كنيد. قابل ذكر است كه اگر تلفن همراه خود را خاموش كنيد ، اين ويژگي غير فعال مي شود و نياز به فعال سازي دوباره آن خواهيد داشت.

در پايان اين بخش متذكر مي شوم كه كدهاي پردازش سيگنال ممكن است در بعضي از گوشي هاي جديد NOKIA قابل استفاده نباشند. البته قابل توجه است كه در اين سري از گوشي ها ، ويژگي هاي EFR و HFR به صورت اتوماتيك كنترل مي شوند و نيازي به دخالت كاربر براي تنظيم آنها وجود ندارد و لزا پس از وارد كردن كد هاي فوق هيچ عكس العملي را از گوشي نخواهيم ديد.



4) نمايش وضعيت SIM Clock :

هر تلفن همراه براي اعلام وضعيت خود در شبكه ، به طور مكرر اقدام به ارسال پالس هاي منظمي مي كند. با توجه به اينكه ارسال هر پالس نيازمند مصرف انرژي مي باشد ، لزا مي تواند از عمر شارژ باطري بكاهد. براي اين منظور ويژگي خاصي براي شبكه هاي GSM در نظر گرفته شده است تا تلفن هاي همراه را از ارسال اينگونه پالس ها باز دارند. تلفن هاي همراه NOKIA داراي اين قابليت مي باشند تا كاربر را از وضعيت شبكه GSM و پشتيباني آن از اين ويژگي ، مطلع سازند. فعال بودن اين ويژگي مي تواند تاثير به سزايي در مصرف انرژي باطري داشته باشد. براي اطلاع از وضعيت فوق مي توانيد كد #746025625#* را بر روي تلفن همراه خود وارد نماييد. توجه نماييد كه استفاده از اين كد هيچ قابليت خاصي را فعال نمي نمايد و تنها براي آگاهي از وضعيت SIM Clock مي باشد. قابل ذكر است كه شبكه تلفن همراه ايران از اين سيستم پشتيباني مي نمايد.


5) منوي مخفي گارانتي :

در تلفن هاي همراه NOKIA يك منوي مخفي وجود دارد كه حاوي اطلاعات مفيدي براي تعميركاران گوشي هاي موبايل مي باشد. براي دست يابي به اين منوي مخفي ، كافي است كد #92702689#* را بر روي تلفن همراه خود وارد نماييد. در اين هنگام شما وارد يك منوي مخفي مي شويد كه شامل گزينه هاي زير مي باشد :

1) نمايش شماره سريال گوشي

2) تاريخ ساخت گوشي

3) تاريخ آخرين تعمير انجام شده بر روي گوشي (البته اگر در گذشته تعميري بر روي آن انجام گرفته باشد)

4) نشان دهنده زمان مكالمات انجام شده با گوشي مورد نظر (اين تايمر را با هيچ روشي نمي توان پاك نمود)

5) ايجاد توانايي برقراري تبادل اطلاعات كاربر (در صورت وجود لوازم مورد نياز)

براي خارج شدن از اين منو ، يك بار تلفن خود را خاموش كنيد و سپس دوباره آن را روشن نماييد.



6) تلفن همراه NOKIA به عنوان ابزار استراق سمع :

ابتدا تلفن خود را بر روي حالت Silent (بي صدا) تنظيم نماييد ، سپس نگاهي به اتصالات فلزي زير دستگاه موبايل (در كنار محل اتصال كابل شارژر) خود بياندازيد. حال پين هاي سوم و چهارم از سمت چپ را به وسيله يك تيغه فلزي به يكديگر متصل نماييد. در اين هنگام نرم افزار موبايل هنگ مي كند و منوي Headset به طور اتوماتيك فعال مي گردد و عبارت Headset بر روي صفحه نمايانگر مي شود. از منوي Headset ، ويژگي Automatic Answer را فعال نماييد. حال گوشي خود را در محل مورد نظر براي استراق سمع قرار داده و از جاي ديگر به آن تلفن كنيد. پس از مدت كوتاهي تلفن شما به طور اتوماتيك ارتباط را برقرار كرده و شما قادر خواهيد بود تا صداي محيط را بشنويد. توجه نماييد كه براي از كار انداختن اين ويژگي تنها بايد دستگاه تلفن خود را به حالت " تنظيمات پيش فرض كارخانه " برگردانيد.



7) منوي جديد در تماس هاي اضطراري :
با استفاده از اين كد شما قادر خواهيد بود تا با تلفن هاي اضطراري مانند ۱۱۰ ، ۱۱۸ و ... به طور رايگان تماس حاصل نماييد. براي اين منظور كد *3001#12345# را بر روي تلفن همراه خود وارد نماييد. در اين هنگام منويي در مقابل شما ظاهر خواهد گشت و شما را قادر به برقراري تماس رايگان با شماره هاي اضطراري خواهد نمود. قابل ذكر است كه كاركرد اين ويژگي بستگي به شبكه GSM دارد و ممكن است در بسياري از شبكه ها قابل استفاده نباشد و شما همچنان مجبور به پرداخت هزينه براي برقراري تماس باشيد.



درآمدي بر كدهاي امنيتي تلفن هاي همراه :
به منظور حفظ سيم كارت و گوشي تلفن همراه از دسترسي غير مجاز ، كدهاي خاصي در نظر گرفته شده است. در زير به بررسي عملكرد اين كدها مي پردازيم.

1) Security Code : اين كد بر روي دستگاه تلفن تنظيم مي شود و در گوشي هاي NOKIA به طور پيش فرض برابر 12345 مي باشد. به وسيله اين كد مي توان دسترسي غير مجاز به بعضي از امكانات تلفن را محدود نمود. در گوشي هاي موبايل NOKIA ، اگر اين كد ۱۰ بار اشتباه وارد گردد ، تلفن به مدت ۵ دقيقه از پذيرش كد جديد خودداري مي كند.

2) PIN Code : اين كد بر روي سيم كارت تنظيم مي شود و براي دست يابي به آن بايد به امور مشتركين شركت مخابرات مراجعه نمود. در ايران اين كد بر روي سند سيم كارت ثبت است و به طور پيش فرض برابر 1234 مي باشد. به وسيله اين كد مي توان دسترسي غير مجاز به سيم كارت و بسياري از قابليت هاي شبكه را محدود نمود. اگر اين كد را سه بار اشتباه وارد كنيد ، دستگاه بر روي PIN قفل مي گردد و براي آزاد سازي آن نياز به استفاده از كد PUK خواهيد داشت.

3) PIN2 Code : اين كد نيز مانند PIN بر روي سيم كارت تنظيم مي شود و براي دست يابي به آن مي توان به امور مشتركين شركت مخابرات مراجعه نمود. در ايران اين كد به صورت پيش فرض برابر 5678 تنظيم شده و از ثبت آن بر روي سند سيم كارت خودداري شده است. علت عدم ثبت ، ارائه نشدن خدمات مربوط به اين كد تا حال حاضر مي باشد. شايد در آينده اي نزديك با ارائه خدمات جديد از سوي شركت مخابرات ، اين كد نيز به صورت فراگير اعلام گردد. به وسيله اين كد مي توان دسترسي غير مجاز به بسياري از امكانات شبكه را محدود كرد. اگر اين كد را سه بار اشتباه وارد كنيد ، دستگاه بر روي PIN2 قفل مي گردد و براي آزاد سازي آن نياز به استفاده از كد PUK2 خواهيد داشت.

4) PUK Code : همانطور كه بيان شد ، اگر دستگاه شما بر روي PIN قفل گردد ، براي آزاد سازي آن نياز به اين كد داريد. براي دريافت اين كد مي توانيد به امور مشتركين شركت مخابرات مراجعه نماييد. در ايران اين كد بر روي سند سيم كارت ثبت مي باشد.

5) PUK2 Code : همانطور كه بيان شد ، اگر دستگاه شما بر روي PIN2 قفل گردد ، براي آزاد سازي آن نياز به اين كد داريد. براي دريافت اين كد مي توانيد به امور مشتركين شركت مخابرات مراجعه نماييد. در ايران اين كد بر روي سند سيم كارت ثبت مي باشد.

6) Barring Password : اين كد بر روي سيم كارت تنظيم مي گردد و در هنگام استفاده از سرويس مسدود سازي شماره تلفن ها استفاده مي گردد. براي دريافت اين كد به امور مشتركين شركت مخابرات مراجعه نماييد.


قابل ذكر است كه تمامي كدها به غير از PUK و PUK2 قابل تغيير مي باشند و بدين منظور مي توانيد از منوهاي مربوطه تلفن همراه خود استفاده نماييد.


8) نحوه آزاد سازي سيم كارت هاي قفل شده بر روي PIN و PIN2 :

همانطور كه بيان شد ، اگر ۳ بار كدهاي PIN و PIN2 را اشتباه وارد كنيد ، سيم كارت شما بر روي كد اشتباه قفل مي گردد و ديگر نمي توانيد از آن استفاده كنيد. براي آزاد سازي سيم كارت از قفل بايد به كدهاي PUK و PUK2 آگاه باشيد.

1) نحوه آزاد سازي سيم كارت از قفل PIN : براي اين منظور كد زير را بر روي دستگاه وارد كرده و تكمه برقراري تماس (Call) را فشار دهيد. توجه نماييد كه به جاي كلمه PUK در كد زير ، تنها PUK Code ثبت شده بر روي سند سيم كارت را وارد نماييد. به جاي عبارت New PIN ، كد PIN جديد را وارد نماييد و به جاي عبارت New PIN Again ، كد PIN جديد را تكرار كنيد.

**05*PUK*New PIN*New PIN Again*#



2) نحوه آزاد سازي سيم كارت از قفل PIN2 : براي اين منظور كد زير را بر روي دستگاه وارد كرده و تكمه برقراري تماس (Call) را فشار دهيد. توجه نماييد كه به جاي كلمه PUK2 در كد زير ، تنها PUK2 Code ثبت شده بر روي سيم كارت را وارد نماييد. به جاي عبارت New PIN2 ، كد PIN2 جديد را وارد نماييد و به جاي عبارت New PIN2 Again ، كد PIN2 جديد را تكرار كنيد.

+ نوشته شده در نوزدهم بهمن 1385ساعت توسط حسین |
STOIK Smart Resizer
 1000 برابر بر روی یک عکس زوم کنید اما بدون اینکه اندکی از کیفیت عکس مورد نظر کاهش یابد. تا حدودی این موضوع غیر ممکن به نظر میاید اما میتوانید آن را امتحان کنید!

دانلود

+ نوشته شده در نوزدهم بهمن 1385ساعت توسط حسین |
سرعت خاموش شدن کامپیوترتان تا چندین برابر سریع تر کنيد

شاید ویندوز شما هم به این مشکل دچار شده باشد که هنگام خاموش کردن سیستم ، مدت زمانی نسبتا زیادی طول بکشد تا کامپیوتر به طور کامل خاموش شود. اما نگران نباشید ، با استفاده از این ترفندی که هم اکنون به شما معرفی خواهیم کرد می توانید کاری کنید که سرعت خاموش شدن کامپیوترتان تا چندین برابر سریع تر شود.

بدین منظور:
ابتدا در منوی start گزینه ی run را انتخاب کنید و در آن عبارت regedit را تایپ کنید و کلید Enter را بفشارید.
پس از باز شدن رجیستری به دنبال این مسیر بگردید

 

==>    HKey_Current_User/ControlPanel/Desktop


حال در پنجره ی سمت راست عبارت hangapptimeout راخواهید داشت. روی عبارت مذکور دوبار کلیک کنید و بجای عدد موجود عددی کمتر را وارد کنید.
تنها دقت کنید که عددی که وارد می کنید نباید کمتر از 100 باشد.

+ نوشته شده در نوزدهم بهمن 1385ساعت توسط حسین |
همه چیز در مورد مدیا پلیر - Media Player

غیرفعال کردن پیغام Upgrade
حذف آخرین Play List
پنهان کردن پنجره Anchor
تغییر عنوان پنجره مدیا پلیر
حذف کردن عناصر مختلف از مدیا پلیر
ارسال شناسه کاربر در مدیا پلیر
قفل کردن
Skin انتخاب شده برای مدیا پلیر
فعال کردن ویژگی های مربوط به
DVD در مدیا پلیر
براي فراگيري اين موارد با ادامه مقاله همراه باشيد.

غیرفعال کردن پیغام Upgrade
با این کار پیغام Upgrade ای که موقع نصب یک نسخه جدیدتر مدیا پلیر ویندوز ظاهر می شود غیر فعال می شود.
به آدرس زیر بروید :
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MediaPlayer\PlayerUpgrade
در صفحه سمت راست در یک فضای خالی راست کلیک کنید و از آنجا New و از منوی باز شده String Value را انتخاب کنید و نام آنرا AskMeAgain بگذارید . سپس روی آن کلیک کرده و در قسمت Value Data عبارت No را بنویسید.
با این کار
Upgrade مربوط به مدیا پلیر خذف می شود . برای فعال کردن مجدد این پیغام مقدار Yes را به جای No قرار بدهید.

حذف آخرین
Play List
با این کار می توانید آخرین فایل ها و URL های استفاده شده را از History مربوط به مدیا پلیر ویندوز حذف کنید.
برای حذف لیست فایل هایی که آخرین بار پخش شده اند به این آدرس بروید :
HKEY_CURRENT_USER\Software\Microsoft\MediaPlayer\Player\RecentFileList
و برای حذف لیست URL ها به این آدرس بروید :
HKEY_CURRENT_USER\Software\Microsoft\MediaPlayer\Player\RecentURLList
موارد مورد نظر خود را Delete ( حذف ) كنيد.

پنهان کردن پنجره
Anchor
وقتی در حالت
Skin از مدیا پلیر استفاده می کنید ، پنجره ای با نام Anchor نمایش داده می شود که به نظر ک چیز ضائد و اضافي است.
برای حذف این پنجره به آدرس زیر بروید :
HKEY_CURRENT_USER\Software\Policies\Microsoft\WindowsMediaPlayer
با راست کلیک کردن در صفحه سمت راست و با راست کلیک کردن از منوی باز شده یک DWORD با نام DoNotShowAnchor بسازید و مقدار آنرا 1 قرار دهید تا پنجره Anchor حذف شود . برای نمایش دادن این پنجره عدد 0 را به جای 1 قرار دهید.
نکته : این ترفند برای مدیاپلیر با ورژن 8 به بالا کاربرد دارد.

تغییر عنوان پنجره مدیا پلیر
با این ترفند می توانید عنوان برنامه را تغییر دهید و عنوان دلخواه خودتان را جایگزین کنید.
به آدرس زیر بروید :
HKEY_CURRENT_USER\Software\Policies\Microsoft\WindowsMediaPlayer
در این صفحه یک String  با نام TitleBar بسازید و روی آن کلیک کنید و متن دلخواه خود را بنویسید.

حذف کردن عناصر مختلف از مدیا پلیر
عناصر متعددی روی مدیا پلیر موجود است که ممکن است برای ما کاربردی نداشته باشد. اگر می خواهید بعضی از این عناصر را حذف کنید به آدرس زیر بروید :
HKEY_CURRENT_USER\Software\Policies\Microsoft\WindowsMediaPlayer
شما می توانید در اینجا عناصر Radio Bar , Media Favorite , Find New Station را حذف کنید . برای حذف هر کدام باید یک DWORD بسازید و با توجه به زیر نام مناسب را انتخاب کنید و مقدار آنرا برابر 1 قرار دهید تا حذف شود . برای فعال کردن مقدار 1 را به 0 تغییر دهید.
Radio Bar = NoRadiaBar
Media Favorite = NoMediaFavorite
Find New Station = NoFindNewStation

ارسال شناسه کاربر در مدیا پلیر
در زمان برقرار ارتباط راه دور با یک شبکه تلویزیونی یا رادیویی معمولا یک شناسه خاص توسط مدیا پلیر ارسال می شود . ترفند زیر ارسال یا عدم ارسال این شناسه را کنترل می کند.
به آدرس زیر بروید :
HKEY_CURRENT_USER\Software\Microsoft\MediaPlayer\Preferences
یک Binary با نام SendUserGUID بسازید , جهت ارسال شدن شناسه خاص ( GUID ) عدد 1 و جهت عدم ارسال عدد 0 را بنویسید.

قفل کردن
Skin انتخاب شده برای مدیا پلیر
این ترفند به شما این امکان را می دهد تا یک
Skin خاص برای مدیا پلیر تعریف کنید و آنرا قفل کنید . با این کار سایر کاربران نمی توانند به ویژگی هایی که برای Skin تعریف شده دسترسی پیدا کنند . برای این کار به آدرس زیر بروید :
HKEY_CURRENT_USER\Software\Policies\Microsoft\WindowsMediaPlayer
یک String با نام DefaultSkin ایجاد کرده و آنرا برابر با نام Skin مورد نظر قرار دهید.
توجه : حتما نام
Skin را به طور کامل وارد کنید ( مانند : Classic.wmz )
حالا یک
DWORD با نام SetAndLockSkin بسازید و آنرا برابر با 1 قرار دهید تا skin قفل شود.
 نکته : این ترفند برای مدیاپلیر با ورژن 8 به بالا کاربرد دارد.

فعال کردن ویژگی های مربوط به
DVD در مدیا پلیر
با استفاده از این ترفند می توانید از مدیا پلیر برای نمایش
DVD ها استفاده کنید.
به آدرس زیر بروید :
HKEY_CURRENT_USER\Software\Microsoft\MediaPlayer\Player\Settings
یک String با نام EnableDVDUI ایجاد کنید و آنرا برابر با Yes قرار دهید تا توابع کنترل کننده DVD در مدیاپلیر فعال شود.


+ نوشته شده در نوزدهم بهمن 1385ساعت توسط حسین |
نرم افزار جالب برای قفل فلاپی
 

نرم افزار برای کپی فلاپی های قفل دار

اگه كپى هم بگيرين بازم قفل به فلاپى جديد انتقال پيدا ميكنه

اسم اين نرم افزار Ccica هستش كه تحت داس كار ميكنه در عين

سادگى هم نرم افزار خوبيه

دانلود

توجه کنید که فقط تحت داس کار میکنه

 

+ نوشته شده در نوزدهم بهمن 1385ساعت توسط حسین |
مرلین جادوگر در فتوشاپ!

قصد داریم تا هم اکنون یکی از شوخی های جالب سازندگان نرم افزار فتوشاپ را به شما معرفی کنیم. با استفاده از این ترفند مخفی میتوانید مرلین جادوگر را در فتوشاپ ظاهر کنید! این ترفند بر روی نسخه Adobe Photoshop 8 به بعد قابل اجراست.


بدین منظور:
نرم افزار Adobe Photoshop را اجرا کنید.
دکمه F7 را بزنید تا در صورت عدم وجود ، پنجره Layers / Channels / Paths بازگردد.
اکنون دکمه Alt را نگه دارید و رها نکنید.


در گوشه بالا سمت راست پنجره Layers / Channels / Paths یک فلش کوچک وجود دارد. آن را با موس فشار دهید. برای باز شدنش همچنان که دستتان روی دکمه Alt است کلید موس را نیز نگه دارید تا منوی فلش باز بماند.


اکنون کافی است نشانگر موس را روی گزینه Palette Options ببرید و رها کنید. خواهید دید که مرلین جادوگر نمایان خواهد شد!


 

+ نوشته شده در پانزدهم بهمن 1385ساعت توسط حسین |
زمان و تاریخ باز شدن یک فایل
تا الان شده که کسی پشت سیستم شما بشینه و برنامه هاتونو نگاه کنه و بعد انکار کنه بگه اون ساعت کار نکردم.
با این برنامه می تونید زمان و تاریخ دقیق آخرین دسترسی به یک فایل  رو ببینید.

خوب شروع می کنیم یک Button , یک Memo روی فرم بذارید و برای Button دستورات زیر را بنویسید. 

procedure TForm1.Button1Click(Sender: TObject);
var
SearchRec : TSearchRec;
Success : integer;
DT : TFileTime;
ST : TSystemTime;
begin
Memo1.Font.Name:='Tahoma';
Success := SysUtils.FindFirst('c:\Yahoo!\YPager.exe'{ اسم و آدرس فایل با پسوند },faAnyFile,SearchRec);
if (Success = 0) and
((SearchRec.FindData.ftLastAccessTime.dwLowDateTime <> 0 ) or
(SearchRec.FindData.ftLastAccessTime.dwHighDateTime <> 0 )) then
begin
FileTimeToLocalFileTime(SearchRec.FindData.ftLastAccessTime,DT);
FileTimeToSystemTime(DT,ST);
Memo1.Lines.Clear;
Memo1.Lines.Add('آخرین زمان و تاریخ دسترسی به فایل ');
Memo1.Lines.Add('سال = ' + IntToStr(ST.wYear));
Memo1.Lines.Add('ماه = ' + IntToStr(ST.wMonth));
Memo1.Lines.Add('روز از هفته= ' + IntToStr(ST.wDayOfWeek));
Memo1.Lines.Add('روز = ' + IntToStr(ST.wDay));
Memo1.Lines.Add('ساعت = ' + IntToStr(ST.wHour));
Memo1.Lines.Add('دقیقه = ' + IntToStr(ST.wMinute));
Memo1.Lines.Add('ثانیه= ' + IntToStr(ST.wSecond));
Memo1.Lines.Add('میلی ثانیه = ' +IntToStr(ST.wMilliseconds));
end;
SysUtils.FindClose(SearchRec);

end;
 

+ نوشته شده در چهاردهم بهمن 1385ساعت توسط حسین |
کپی زدن فایل - Copy File In Delphi

با این Procedure می تونید یک فایل رو از سیستم به جای دیگر انتقال دهید.این رویه دو مقدار می گیرد که اولی فایل مورد نظر برای انتقال و پارامتر دومی مسیر جدید یا محل Past شدن.

ابتدا رویه را بصورت زیر تعریف کنید.

 

procedure CopyFile(const FromFile,ToFile : string);
var
FromF,ToF : File;
NumRead,NumWritten : integer;
Buf : Array[1..2048] of char;
begin
AssignFile(FromF,FromFile);
Reset(FromF,1);
AssignFile(ToF,ToFile);
Rewrite(ToF,1);
repeat
BlockRead(FromF,Buf,SizeOf(Buf),NumRead);
BlockWrite(ToF,Buf,NumRead,NumWritten);
until (NumRead = 0) or (NumWritten <> NumRead);
CloseFile(FromF);
CloseFile(ToF);
end;
 

 

الان یه Button بذارید و از رویه استفاده کنید مثلاً

 

procedure TForm1.Button1Click(Sender: TObject);
begin
CopyFile('c:\camera.exe','d:\119.exe');
end;

+ نوشته شده در چهاردهم بهمن 1385ساعت توسط حسین |
مسیر فایلهای اصلی ویندوز

ابتدا Registry رو به بخش Uses ها اضافه می کنیم. بعد چهار تا Edit و چهار تا Button روی فرم می ذاریم.

می خواهیم کلید اوّل مسیر ویندوز نصب شده رو تو Edit1 مشخص کنه پس Caption Buton1 رو بذارید Get Windows Path حالا  برای همین کلید این دستورات رو بنویسید.


procedure TForm1.Button1Click(Sender: TObject);
var
WinDir: Array[0..MAX_PATH -1] of char;
Result: string;
begin
SetString(Result,WinDir,GetWindowsDirectory(WinDir,MAX_PATH));
Edit1.Text:=WinDir;
end;
 

خوب تو کلید بعدی هم می خواهیم مسیر system32  رو پیدا کنیم پس مثل کلید اول ابتدا Coption این کلید رو می ذاریم Get System Path و این دستورات رو می نویسیم.

var
SysDir: Array[0..MAX_PATH -1] of char;
Result: string;
begin
SetString(Result,SysDir,GetSystemDirectory(SysDir,MAX_PATH));
Edit2.Text:=SysDir;
end;
 

 

برای کلید سومی هم می خواهیم مسیر Program Files رو پیدا کنیم  Caption این کلید رو می ذاریم Get Program Files Path بعد دستورات زیر رو براش می نویسیم .

procedure TForm1.Button3Click(Sender: TObject);
var
Reg: TRegistry;
begin
Reg:=TRegistry.Create;
Reg.RootKey:=HKEY_LOCAL_MACHINE;
Reg.OpenKey('\SOFTWARE\Microsoft\Windows\CurrentVersion',False);
Edit3.Text:=Reg.ReadString('ProgramFilesDir');
Reg.CloseKey;
end;

 

برای کلید و ادیت چهارم هم می خواهیم مسیر Temp  رو نشون بدیم پس Caption این کلید رو می ذاریم Get Temp Path  و بعد این دستورات رو براش می نویسیم.

var
TempDir: Array[0..MAX_PATH -1] of char;
Result: string;
begin
SetString(Result,TempDir,GetTempPath(MAX_PATH,TempDir));
Edit4.Text:=TempDir;
end;

+ نوشته شده در چهاردهم بهمن 1385ساعت توسط حسین |
تعیین مسیر Desktop

یه Button  روی فرم بذارید و این دستورات رو بنویسید .

procedure TForm1.Button1Click(Sender: TObject);
var
pid1: PitemIDList;
buf: Array[0..Max_PATH] of char;
begin
if Succeeded(ShGetSpecialFolderLocation(Handle,CSIDL_DESKTOP,pid1)) then
begin
if ShGetPathfromIDList(pid1,buf) then ShowMessage(buf) ;
CoTaskMemFree(pid1);
end;
end;

+ نوشته شده در چهاردهم بهمن 1385ساعت توسط حسین |
صفحه کلید فارسی در زمان اجرای برنامه
دو تا Buton بذارید روی فرم و Caption اولی رو بذارید Fa  و دومی هم En

حالا برای Button1 اینو بنویسید .



procedure TForm1.Button1Click(Sender: TObject);
begin
 LoadKeyboardLayout('00000429',KLF_ACTIVATE);

end;

و برای Button2 هم این .



procedure TForm1.Button1Click(Sender: TObject);
begin
 LoadKeyboardLayout('00000409',KLF_ACTIVATE);

end;

 

+ نوشته شده در چهاردهم بهمن 1385ساعت توسط حسین |
مختصات موس در دسکتاپ
چهارتا Label و یه Timer بذارید روی فرم حالا Caption Label1 رو بذارید X که مختصات عرض باشد و همینطور Label2 رو بذارید Y که مختصات طول باشد .

حالا به ترتیب Label3 , 4 رو روبروی Label های 1و2 بذارید

حالا برای تایمر اینو می نویسیم.

var M : TMouse;
begin
Label3.Caption := IntToStr(M.CursorPos.x);
Label4.Caption := IntToStr(M.CursorPos.y);
end;

+ نوشته شده در چهاردهم بهمن 1385ساعت توسط حسین |
تاریخچه زبان دلفی

دلفی در واقع یک کامپایلر پاسکال است. دلفی 6 نسل جدید کامپایلر های پاسکال است که شرکت Borland از زمان ایجاد اولین نسخه پاسکال توسط Andres Hejlsberg در 15 سال پیش به بازار عرضه کرد.

برنامه نویسی به زبان پاسکال در سالیان سال از استواری و ثبات، زیبایی و ظرافت و البته سرعت بالای کامپایل سود برده است. دلفی هم از این قاعده مستثنی نیست. کامپایلر دلفی ترکیبی از بیش از یک دهه تجربه طراحی کامپایلر پاسکال و معماری بهبود یافته کامپایلر های 32 بیتی است. اگرچه قابلیت های کامپایلرها با گذشت زمان پیشرفت قابل توجهی داشته است ولی سرعت آن چندان کاهش نیافته و همچنان از سرعت بالایی برخوردار است. به علاوه استحکام و قدرت کامپایلر دلفی معیاری برای سنجش دیگر کامپایلر هاست.

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

سال 1995 -
Delphi1
در زمان استفاده از سیستم عامل
DOS برنامه نویسان مجبور بودند از بین زبان پر قدرت ولی کم سرعت Basic و زبان کارآمد ولی پیچیده و نامفهوم Assembly یکی را انتخاب کنند. پاسکال با ارائه یک زبان ساخت یافته و یک کامپایلر سریع و کم نقص این شکاف را پرکرد. برنامه نویسان Windows 3.1 هم با تصمیم گیری مشابهی رو برو شدند. یکی زبان قدرتمند و سنگین ++C و یکی زبان ساده و محدود کننده Visual Basic .

ارائه
Delphi1 در این مورد هم راه حل خوبی برای برنامه نویسان بود. دلفی مجموعه متفاوتی برای برنامه نویسی بود . طراحی و توسعه برنامه های کاربردی، ایجاد DLL ها، پایگاههای داده و ... که یک محیط ویژوال وسیع را تشکیل می داد. Delphi1 اولین ابزار برنامه نویسی ویندوز بود که محیط طراحی ویژوال، کامپایلر بهینه کد برنامه و دسترسی قوی به پایگاههای داده را در یک جا جمع کرد که آن را به یکی از بهترین ابزارهای روش نوین توسعه سریع نرم افزار (Rapid Application Development) تبدیل کرد. این مجموعه قدرتمند باعث شد که در همان زمان بسیاری از برنامه نویسان زبانهای دیگر به Delphi روی بیاورند و این موفقیت بزرگی برای Borland به حساب می آمد. همچنین بسیاری از برنامه نویسان پاسکال دلفی را ابزاری یافتند که توسط آن هم از توانایی و تجربه خود در برنامه نویسی پاسکال استفاده می کردند و هم توانایی کار در ویندوز را به دست آوردند. همچنین زبانی که در آن زمان با نام پاسکال شیئی (ObjectPascal) در دانشگاهها ایجاد شده بود یک زبان بسیار خشک و محدود کننده بود که اصلاٌ حالت کاربردی پیدا نکرد.

ویژگیهای دلفی مثل طراحی ظاهری حساب شده و کاربر پسند آن باعث شد که زبان پاسکال شیئی عملاٌ از رده خارج شود. تیم طراحی
VB در Microsoft قبل از حضور دلفی هیچ رقیب مهمی برای خود نمی دید. VisualBasic در آن زمان زبانی نا کارآ ، کم سرعت و کند ذهن بود. Visual Basic 3 در عمل اصلا توانایی رقابت با Delphi 1 را نداشت. در این سال شرکت Borland گرفتار یک سری مشکلات قضائی با شرکت Lotus بود که در نهایت هم متخلف شناخته شد. همچنین درگیری مشابهی هم با Microsoft بر سر تلاش در تغییر دادن فضای نرم افزار های Microsoft پیدا کرد. همچنین Borland مشغول طراحی و فروش طرح Quatro به شرکت Novell و طراحی پایگاه های داده dBase و Paradox بود که با استقبال قابل توجهی مواجه نشد.

در این زمان که
Borland مشغول فعالیتهای قضایی و تجاری بود Microsft توانست گوی سبقت را از Borland برباید و قسمت اعظم بازار ابزار های برنامه نویسی تحت Windows را در اختیار بگیرد و سعی می کرد تا این طرز فکر را اشاعه دهد که چون Windows را طراحی کرده صلاحیت و توانایی تهیه بهترین ابزار های برنامه نویسی تحت آن را نیز در دست دارد. در این شرایط Borland با عرضه Delphi و نسخه جدید ++Borland C سعی کرد خدشه ای در فرمانروایی Microsoft وارد کند و سهمی در بازار بزرگ این محصولات داشته باشد.

سال 1996 -
Delphi2
یک سال بعد
Delphi2 تمام مزایای نسخه قبلی را تحت سیستم های جدید 32 بیتی (Windows 95,Windows NT) ارائه داد. همچنین Delphi2 با ارائه خصوصیات اضافه و کارکرد های قویتری نسبت به Delphi1 توانایی های خود را افزایش داد. (ازجمله ارائه کامپایلر 32 بیتی که سرعت بالایی به نرم افزار ها می بخشید، کتابخانه بزرگ و کاملی از اشیای مختلف، شیوه جدید و تکامل یافته ای برای اتصال به پایگاه های داده مختلف، ادیتور پیشرفته، پشتیبانی از OLE ، توانایی وراثت در فرمهای ویژوال و سازگاری با پروژه های 16 بیتی Delphi1 ). Delphi2 به معیاری برای سنجش و مقایسه همه ابزارهای توسعه نرم افزار در آن زمان تبدیل شد.

در آن زمان با ارائه سیستم 32 بیتی
Windows95جهش بزرگی در سیستم عامل Windows رخ داد و Borland بسیار مشتاق بود که Delphi را به بهترین ابزار برنامه نویسی سیستم جدید تبدیل کند. نکته این که در آن زمان به منظور تاثیر در افکار عمومی و تاکید بر قدرت Delphi در سیستم عامل 32 بیتی قرار بود که نرم افزار با نام جدید Delphi32 به بازار عرضه شود ولی در آخرین مراحل به خاطر اینکه نشان دهند این زبان زبانی رشد یافته و تکامل یافته نسخه قبلی یعنی Delphi1 است نام Delphi2 را برای آن انتخاب کردند.

Microsoft تلاش کرد که با Visual Basic 4 با Delphi مقابله کند ولی از ابتدا کیفیت پایین آن و ضعف آن در انتقال برنامه های 16 بیتی به سیستم 32 بیتی و بروز اشکالات ساختاری در طراحی آن موجب شکست زودهنگام Visual Basic 4 شد. در این زمان هنوز تعداد زیادی از برنامه نویسان به Visual Basic وفادار بودند. Borland هنچنین روشها و ابزارهای قدرتمندی همچون PowerBuilder برای طراحی نرم افزار های Client/Server ارائه داد ولی Delphi هنوز آن قدر قدرتمند نشده بود که بتواند نرم افزارهایی که جایی در بین توسعه گران پیدا کرده اند را براندازد.

سال 1997 -
Delphi3
از زمان تهیه و توسعه
Delphi1 تیم توسعه Delphi در فکر گسترش و ایجاد یک زبان قدرتمند جهانی بود. برای Delphi2 این تیم تمام نیروی خود را صرف اعمال مربوط به انتقال تواناییها و کارکرد ها به سیستم 32 بیتی و همچنین اضافه کردن خصوصیات Client/Server و پایگاه داده کرد. در زمان تهیه Delphi3 تیم توسعه فرصت لازم برای گسترش مجموعه ابزار موجود را یافت و در این راستا کیفیت و کمیت ابزارهای Delphi بهبود یافت. به علاوه راه حل هایی برای مشکلات عمده و قدیمی برنامه نویسان تحت ویندوز ارائه شد. به ویژه استفاده از برخی فناوری های پیچیده و نا مفهوم (مثل COM و ActiveX وتوسعه نرم افزار های تحت Web وکنترل پایگاههای داده چند کاربره). روش نمایش کد برنامه همچنین توانایی کامل کردن خودکار کد (Code Completion) عملیات کد نویسی را راحت تر کرد. ضمن این که همچنان در بیشتر موارد اساس و متدولوژی برنامه نویسی مانند Delphi1 بود و بر پایبندی به قوانین اصولی Pascal تاکید می شد.

در این زمان رقابت شرکت های تولید کننده ابزار های برنامه نویسی بسیار تنگاتنگ شده بود.
Microsoft با ارائه Visual Basic 5 به پیشرفت های خوبی دست یافت ازجمله پشتیبانی قوی از COM و ActiveX و ایجاد برخی خصوصیات و تغییرات کلیدی و اساسی در کامپایلر VB. ضمن این در همین سال Borland با پشتوانه قوی Delphi و با استفاده از ساختار موفق آن ابزارهای دیگری همچون Forte و BC++ Builder به بازار عرضه کرد.

تیم
Delphi در زمان طراحی Delphi3 چند تن از اعضای کلیدی خود را از دست داد. Andres Hejlsberg معمار اصلی Delphi در اقدام غیر منتظره ای Borland را ترک کرد و تصمیم گرفت به رقیب دیرینه یعنی Microsoft بپیوندد. اما حرکت تیم Delphi متوقف نشد و معاون Hejlsberg که سالها تجربه همکاری با او را داشت توانست رهبری این تیم را به خوبی در دست بگیرد. همچنین مسئول فنی تیم (Paul Gross) هم در اقدام مشابهی به گروه Microsoft ملحق شد. این تغییرات بیشتر به خاطر اختلافات شخصی بین افراد تیم بود و نه به خاطر مسائل حرفه ای.

سال 1998 -
Delphi4
Delphi4 بیشتر بر روی راحتتر کردن کار با دلفی متمرکز شد. مرورگر روال ها (Module Explorer) بهبود یافت و مرور و ویرایش Unit ها را راحت تر کرد. کنترل کد و کامل کردن خودکار کلاسها این فرصت را به کاربر داد که فکر و زمان خود را روی ساختار اصلی برنامه بگذارد و در وقت صرفه جویی کند. طراحی رابط کاربر هم کاملاٌ عوض شد و بهبود یافت و اشکال زدا (Debugger) نیز پیشرفت قابل توجهی داشت. Delphi4 قابلیتهای برنامه نویسان را در استفاده از تکنولوژیهای چند منظوره خارجی مثل MIDAS ، DCOM ، MIS و Corba افزایش داد.

در این سال
Delphi جایگاه خود را در رقابت با دیگران مستحکم کرده بود و کم کم به سمت دست یابی به سودآوری مالی مورد نظر خود پیش می رفت. در واقع در این زمان بود که حاصل کار سنگین چند ساله تیم نمایان می شد. بعد از سالها آزمایش Delphi شهرت و محبوبیت خاصی پیدا کرد و دیگر برنامه نویسان Delphi توانایی جدا شدن از آن را نداشتند. در این زمان Borland به کار سوٌال برانگیزی دست زد و به منظور تبلیغ بیشتر و برتری در جنگ روانی با دیگر شرکتها نام Inprise را برای فعالیتهای تجاری خود برگزید.

ابزار های مربوط به فن آوری
Corba را گسترش داد تا راه جدیدی برای سودآوری ایجاد کند. برای موفقیت در این زمینه Corba نیاز به رابط کاربر قدرتمندی داشت که در کنار توانایی های آن کار کردن با آن نیز راحت باشد. دقیقاٌ همان کاری که در سالهای قبل در مورد COM و برنامه نویسی تحت Web انجام شده بود و به موفقیت دست یافته بود. با این وجود بنا به دلایل مختلفی این گسترش و توسعه Corba هیچ وقت تکامل و موفقیتی که مورد نظر بود را به دست نیاورد و بر خلاف تبلیغات و سرمایه گذاری های انجام شده فن آوری Corba تنها توانست نقش کوچکی در روند رو به جلوی Delphi ایفا کند.

سال 1999 -
Delphi5
Delphi5 در برخی زمینه ها پیشرفت های قبلی را ادامه داده است. اولاٌ مسیری را که Delphi4 با اضافه کردن ویژگیهای زیادی شروع کرده بود ادامه داد. Delphi4 باعث شد کارهایی که قبلاٌ به صرف وقت زیادی احتیاج داشت بسیار سریعتر انجام شود. Delphi به شکل امیدوار کننده ای به برنامه نویس این امکان را می دهد که بیشتر به برنامه ای که میخواهد بنویسد توجه کند و نه به قواعد برنامه نویسی و نوشتن کد های تکراری و خسته کننده. این ویژگیهای سودمند شامل رابط کاربر بهبودیافته و سیستم اشکال زدایی(Debugger) توانمند ، امکانات برنامه نویسی تیمی و ابزار های ترجمه می شود.

ثانیا
Delphi5 خصوصیات جدیدی را در بر می گیرد که توسعه برنامه های تحت وب را واقعاٌ راحت کرده است. این ویژگیها شامل طراح اشیای مربوط به ASP برای ساختن صفحات (Active Server Page)، اشیایی موسوم به Internet Express برای پشتیبانی از XML و خصوصیات جدید MIDAS که آن را به یک ابزار همه کاره در پایگاه های داده تحت Web تبدیل کرد. در نهایت با صرف وقت ، هزینه و صبر زیاد توانست Delphi5 قدرتمند را عرضه کند. این فعالیت مدتها به طول انجامید و قبل از عرضه عمومی، Delphi5 بارها در بازبینی ها و آزمایشهای داخلی قسمتهای مختلف آن تغییر کرد و بهبود یافت.

Delphi5 در نیمه دوم سال 1999 به بازار عرضه شد و به نفوذ و تسلط بر بازار ادامه داد. در این زمان Visual Basic که کم کم به عضوی تحقیر آمیز برای Microsoft تبدیل می شد هم با پیشرفتهایی توانست در رقابت دوام بیاورد و از صحنه خارج نشود. در اقدام درست و به جایی نام Inprise دوباره به Borland بازگشت. این اقدام از سوی طرفداران و مشتریان قدیمی Borland با استقبال خوبی مواجه شد.

سال 2001 –
Delphi6
در هنگام تهیه
Delphi6 ساختار Delphi در زمینه های مختلف شکل گرفته بود و به یک تکامل نسبی رسیده بود. این مسئله باعث شد که تیم طراحی بتواند وقت خود را بر روی طرحی که مدتها تنها در حد یک نظریه بود بگذارد و آن را بسیار زودتر از آن که انتظار می رفت عملی کند: گام نهادن به محیط های فراتر از Windows . بیشتر نیروی توسعه گران Delphi در این مدت صرف رهانیدن Delphi از بند Windows شد که این خود در درجه اول مبارزه ای آشکار با سلطه Microsoft بود و ثانیاٌ راه برنامه نویسان را به سوی فضا های دیگر برنامه نویسی باز کرد. در ابتدا این عمل ریسک بزرگی بود و بیم آن می رفت که جایگاه Delphi در Windows هم به خطر بیفتد ولی در نهایت به نقطه رشد و قوتی بدل شد که Delphi را به یکی از بهترین ابزار برنامه نویسی Multi Platform تبدیل کرد.تکنولوژی CLX روالهای مختلف Delphi را با Kylix (عضو جدید خانواده Borland که در فضای Linux کار می کند) به اشتراک گذاشت و استفاده از سیستم بایت Java باعث شد که Delphi حتی از قید سخت افزار هم رها شود.

به نظر می رسد که این فعالیتها باعث ثبات
Delphi در دنیای برنامه نویسان شود و نگرانی های Borland و برنامه نویسان که همیشه می ترسیدند که مبادا با ضعیف شدن Windows جایگاه خود را از دست بدهند حال به افتخار و آرامش برای آنان و نگرانی برای طرفداران Microsoft تبدیل شده است.

 

 

+ نوشته شده در چهاردهم بهمن 1385ساعت توسط حسین |
نکات مفید کار در محیط دلفی

محیط دلفی برای برنامه نویسی یکی از بهترین محیطهای برنامه نویسی است گذشته از کارکرد داخلی و کمپایلر آن که بسیار قوی و سریع است، محیط آن یعنی IDE آنهم قدرت بسیار زیادی دارد که باعث شده یکی از بهترین ادیتورها باشد. در این مقاله من سعی بر این داشته ام تا با ارائه یک سری از نکات و کلیدهای میانبر که می توانند برای کار در دلفی بسیار مفید و کارا باشند، کمک کنم تا شما بتوانید با قدرت بیشتر به برنامه نویسی و کار در این محیط قدرتمند ادامه دهید.

در قسمت اول مقاله که در حال حاضر در مقابل شماست من یک سری از کلیدهای میانبر و ترکیبی مورد استفاده در
IDE دلفی را بصورت لیست وار و همراه یک توضیح کوچک آورده ام. دوستان عزیز برنامه نویس ممکنه که شما مدتها با دلفی مشغول برنامه نویسی بوده باشید اما من یقین دارم که در این لیست نکات و روشهای جدیدی را خواهید آموخت.

جستجو در متن بصورت مستقیم:
برای اینکار کلیدهای
Ctrl+E را بفشارید و بدنبال آن شروع به تایپ کلمه مورد نظر کنید نتیجه آن را خود ببینید. برای اینکه به کلمه بعدی بروید کافیست کلید F3 را بزنید.

ایجاد فرورفتگی در کد:
بعضی اوقات - که خیلی هم پیش می‌آید - لازم است که یک مقداری از متن را بصورت بلوک شده به جلو و یا عقب ببریم. منظور دندانه دار کردن متن است که به خوانایی برنامه کمک می کند. برای اینکار می تونید از کلید
Ctrl +Shift+I برای جلو بردن و Ctrl+Shift+U برای عقب برگرداندن متن بلوک شده استفاده کنید.

پرش به قسمت تعریف یک شی (
Object):
ببنید شی مورد نظرتون (از قبیل
VCL, Procedure, Function,...) در کجا و چطور تعریف شده می توانید کلید Crtl رو پایین نگه داشته و روی شی مورد نظر Click کنید.

برای تغییر حالت کاراکترها:
شما می توانید یک قسمت از متن (که ممکن است با حروف بزرگ و یا کوچک تایپ شده باشد) را انتخاب کنید و با زدن کلیدهای
Ctrl+O+U به ترتیب تمامی حروف کوچک آن قسمت از متن را به حروف بزرگ و تمامی حروف بزرگ آنرا به حروف کوچک تبدیل کنید. برای تعییر حالت یک کلمه نیز میتوانید روی کلمه مورد نظر رفته و کلیدهای Ctrl+K+F برای بزرگ کردن و کلیدهای Ctrl+K+E را برای کوچک کردن حروف آن کلمه بکار برد.

درست کردن ماکرو متنی:
این امکان بسیار مفید است و می تواند بسیاری از کارهای نوشتاری را کاهش دهد با اینکار شما میتوانید یک سری از کارهای تکراری که روی متون انجام می دهید را بصورت ماکرو در آورده و از آنها به راحتی استفاده کنید. برای شروع به ضبط ماکرو کلیدهای
Ctrl+Shift+R را بفشارید و آن سری کارهایی را که می خواهید را انجام دهید و سپس برای اینکه به کار ضبط ماکرو پایان دهید کلیدهای Ctrl+Shift+R را دوباره بزنید. حال برای استفاده از ماکرو کافیست در هر جا که لازم بود کلیدهای Ctrl+Shift+P را بفشارید.

انتخاب متن بصورت مربعی:
اگر شما از کهنه کارهای کامپیوتر باشید حتما از زمان داس یادتون هست که برنامه ای بود به نام
PE2 که یکی از امکانات بسیار جالبش این بود که یک مربع از متن رو میتوانستین انتخاب کنید و آنرا کپی یا حذف کنید. بله درست متوجه شدید در محیط دلفی هم شما اینکار را میتوانید انجام دهید اما نه به مشکلی PE2 بلکه اینکار را میتوانید فقط با گرفتن کلید Alt و کشیدن موس روی متن انجام دهید. هر چند ممکن است در نگاه اول زیاد این امکان مفید به نظر نیاید ولی بعضی وقتهای خیلی کار را راحت میکنه، که حتماً تجربه خواهید کرد.

گذاشتن علامت روی متن:
این کار که به
BookMark معروف است بسیار مفید و کارا می باشد. در هنگامی که شما روی قسمتی از متن برنامه کار میکنید و می خواهید به یک قسمت دیگر بروید ممکن است برای برگشتن به مکان اول خود کمی مشکل پیدا کنید. ولی شما میتوانید با زدن چند دکمه به محل مورد نظرتون باز گردید. برای اینکار در خطی که قصد دارید علامت بگذارید کلیدهای Ctrl+Shift+0..9 را بفشارید. منظور اینست که کلیدهای Ctrl+Shift را نگه دارید و یکی از اعداد 0 تا 9 را وارد کنید تا آن خط به همان شماره علامت گذاری شود و سپس هر جا که خواستید بروید و سپس هر بار که کلید Ctrl را نگه دارید و شماره مورد نظر را وارد کنید به همان خط باز خواهید گشت. البته توجه داشته باشید که فقط می توانید 10 خط را با این روش علامت گذاری بکنید و برای برداشتن علامت ها کافیست روی همان خط دوباره کلید Ctrl+shift و شماره‌ای که برای آن خط وارد کرده اید را بفشارید با اینکار علامت آن خط برداشته می شود.

ایجاد کلاس مورد نظر:
شما هنگامی که در قسمت
Private و یا Public یک type، روال یا تابع درست کردید لازم دارید که قسمتی را برای قرار دادن کدهای مربوط به آن روال یا تابع را ایجاد کنید. برای اینکار شما پس از اینکه نام تابع را تایپ کردید می توانید کلیدهای Ctrl+Shift+C را فشار دهید تا دلفی یک قسمت برای نوشتن کدهای مورد نظرتان ایجاد کند.

ظاهر کردن پنجره
Code insight:
شما حتما به اهمیت و مفید بودن این قسمت دلفی واقفید که در هنگام کد نویسی تا چه حد می تواند کارها را راحت کند. بله در هنگام وارد کردن کدها بعد از وارد کردن نام یک کلاس و یا
Object با زدن یک نقطه (.) پنجره Code Insight‌ ظاهر می شود. حال در بعضی وقتها شما ممکن است که نقطه را قبلا وارد کرده باشید و یا در مواقع دیگر این پنجره ظاهر نشود. در این صورت برای اینکه پنجره را ظاهر کنید باید دوباره نقطه را وارد کنید ولی راه آسانتری هم وجود دارد و آن اینست که کلیدهای Ctrl+Speacebar را فشار دهید.

ظاهر کردن پنجره
Code Parameter:
همانند بالا در هنگام ظاهر شدن
Hint مربوط به راهنمای توابع که معمولاً بعد از گذاشتن پرانتز مربوط ظاهر میشود و در مورد پارامترهای لازم می باشد نیز می توانید از کلیدهای Ctrl+Shift+SpaceBar استفاده کنید.

رفتن از قسمت تعریف توابع و روالها به قسمت کد آنها:
همیشه این نیاز وجود خواهد داشت که شما در هنگامی که دارید به دنبال یک روال در قسمت
type میگردید بعد از پیدا کردن نام آن می خواهید که خود آن تابع یا روال را نیز ببنید. برای اینکار خوب حتما نام آن را جستجو میکنید ولی یک راه آسانتر اینست که شما روی نام آن تابع قرار گیرید و کلیدهای Ctrl+Shift+Up/Down را بزنید. در اینحالت اگر روی کد تابع باشید به قسمت تعریف آن خواهید رفت.

 

+ نوشته شده در چهاردهم بهمن 1385ساعت توسط حسین |
نصب ProgressBar روی StatusBar در دلفی
انجام این کار بسیار ساده است. برای این کار کافی است بر روی فرم خود یک StatusBar اضافه نمایید حالا در قسمت تعاریف متغیر های عمومی کد زیر را بنویسید:

ProgressBar1: TprogressBar;


در ادامه دستورات زیر را در خاصیت
OnCreate فرم خود بنویسید:

var
ProgressBarStyle: LongInt;
begin
{create a run progress bar in the status bar}
ProgressBar1 := TProgressBar.Create(StatusBar1);
ProgressBar1.Parent := StatusBar1;
{remove progress bar border}
ProgressBarStyle := GetWindowLong(ProgressBar1.Handle, GWL_EXSTYLE);
ProgressBarStyle := ProgressBarStyle - WS_EX_STATICEDGE;
SetWindowLong(ProgressBar1.Handle, GWL_EXSTYLE, ProgressBarStyle);
{set progress bar position and size - put in Panel[2]}
ProgressBar1.Left := StatusBar1.Panels.Items[0].Width +
StatusBar1.Panels.Items[1].Width + 4;
ProgressBar1.Top := 4;
ProgressBar1.Height := StatusBar1.Height - 6;
ProgressBar1.Width := StatusBar1.Panels.Items[2].Width - 6;
{set range and initial state}
ProgressBar1.Min := 0;
ProgressBar1.Max := 100;
ProgressBar1.Step := 1;
ProgressBar1.Position := 0;
end;


حالا برای آنکه پس از خارج شدن از فرم حافظه اشغال شده آزاد گردد، در قسمت

OnDestroy در Event فرمتان دستور زیر را اضافه نمایید.

 

+ نوشته شده در چهاردهم بهمن 1385ساعت توسط حسین |
بدست آوردن زمان Uptime ویندوز

توسط این کد می توانید تشخیص دهید که ویندوز چه مدت است که در حال اجراست:


function UpTime: string;
const
  ticksperday: Integer    = 1000 * 60 * 60 * 24;
  ticksperhour: Integer   = 1000 * 60 * 60;
  ticksperminute: Integer = 1000 * 60;
  tickspersecond: Integer = 1000;
var
  t:          Longword;
  d, h, m, s: Integer;
begin
  t := GetTickCount;

  d := t div ticksperday;
  Dec(t, d * ticksperday);

  h := t div ticksperhour;
  Dec(t, h * ticksperhour);

  m := t div ticksperminute;
  Dec(t, m * ticksperminute);

  s := t div tickspersecond;

  Result := 'Uptime: ' + IntToStr(d) + ' Days ' + IntToStr(h) + ' Hours ' + IntToStr(m) +
    ' Minutes ' + IntToStr(s) + ' Seconds';
end;

//Sample


procedure TForm1.Button1Click(Sender: TObject);
begin
  label1.Caption := UpTime;
end;


+ نوشته شده در چهاردهم بهمن 1385ساعت توسط حسین |
باز کردن جدول پارادکس بدون دانستن پسورد آن

If you forget your paradox table password, try out
on of these passwords, it works well.

for PARADOX 7.0 use this password: "jIGGAe" or "cupcdvum"
for PARADOX 5.0 use this password: same thing
for PARADOX 4.x (DOS) use this password: "nx66ppx"

+ نوشته شده در چهاردهم بهمن 1385ساعت توسط حسین |
باز کردن استارت منو

procedure TForm1.Button1Click(Sender: TObject);
begin
  SendMessage(Form1.Handle, WM_SYSCOMMAND, SC_TASKLIST, 0);
end;

+ نوشته شده در چهاردهم بهمن 1385ساعت توسط حسین |
باز کردن اپلت های کنترل پنل

function RunControlPanelApplet(sAppletFileName: string): Integer;
begin
  Result := WinExec(PChar('rundll32.exe shell32.dll,' +
                    'Control_RunDLL ' + sAppletFileName),
                    SW_SHOWNORMAL);
end;

{
  Filenames of some Applets:
  Dateinamen einiger Applets:

  Access.cpl   : Accessibility Properties
  Appwiz.cpl   : Add/Remove Programs Properties
  Desk.cpl     : Display Properties
  Inetcpl.cpl  : Internet Properties
  Intl.cpl     : Regional Settings Properties
  Joy.cpl      : Joystick Properties
  Main.cpl     : Mouse Properties
  Mmsys.cpl    : Multimedia Properties
  Modem.cpl    : Modems Properties
  Netcpl.cpl   : Network Properties
  Odbccp32.cpl : 32 bit ODBC Data Source Administrator
  Password.cpl : Password Properties
  Sysdm.cpl    : System Properties
  Themes.cpl   : Desktop Themes
  timedate.cpl : Time/Date Properties
  Wgpocpl.cpl  : MS Workgroup Post Office

}


{
  Example to show the "Display Properties" Applet:
  Beispiel, um das Applet "Eingenschaften von Anzeige" anzuzeigen:
}

procedure TForm1.Button1Click(Sender: TObject);
begin
  RunControlPanelApplet('Desk.cpl');
end;


 

+ نوشته شده در چهاردهم بهمن 1385ساعت توسط حسین |
ايجاد خروجي از TDBGrid به قالب Excel

unit DBGridExportToExcel; 

interface 

uses 
  Windows, Messages, SysUtils, Classes, Graphics,

 Controls, Forms, Dialogs, 
  ExtCtrls, StdCtrls, ComCtrls, DB, IniFiles, Buttons, dbgrids

, ADOX_TLB, ADODB; 


type TScrollEvents = class 
       BeforeScroll_Event: TDataSetNotifyEvent; 
       AfterScroll_Event: TDataSetNotifyEvent; 
       AutoCalcFields_Property: Boolean; 
  end; 

procedure DisableDependencies(DataSet: TDataSet; 

var ScrollEvents: TScrollEvents); 
procedure EnableDependencies(DataSet: TDataSet;

 ScrollEvents: TScrollEvents); 
procedure DBGridToExcelADO(DBGrid: TDBGrid; FileName: string; 

SheetName: string); 


implementation 

//Support procedures: I made that in order to increase speed in 
//the process of scanning large amounts 
//of records in a dataset 

procedure DisableDependencies(DataSet: TDataSet; var

 ScrollEvents: TScrollEvents); 
begin 
     with DataSet do 
          begin 
               DisableControls; 
               ScrollEvents := TScrollEvents.Create(); 
               with ScrollEvents do 
                    begin 
                         BeforeScroll_Event := BeforeScroll; 
                         AfterScroll_Event := AfterScroll; 
                         AutoCalcFields_Property := AutoCalcFields; 
                         BeforeScroll := nil; 
                         AfterScroll := nil; 
                         AutoCalcFields := False; 
                    end; 
          end; 
end; 

procedure EnableDependencies(DataSet: TDataSet;

 ScrollEvents: TScrollEvents); 
begin 
     with DataSet do 
          begin 
               EnableControls; 
               with ScrollEvents do 
                    begin 
                         BeforeScroll := BeforeScroll_Event; 
                         AfterScroll := AfterScroll_Event; 
                         AutoCalcFields := AutoCalcFields_Property; 
                    end; 
          end; 
end; 

//This is the procedure which make the work: 

procedure DBGridToExcelADO(DBGrid: TDBGrid;

 FileName: string; SheetName: string); 
var 
  cat: _Catalog; 
  tbl: _Table; 
  col: _Column; 
  i: integer; 
  ADOConnection: TADOConnection; 
  ADOQuery: TADOQuery; 
  ScrollEvents: TScrollEvents; 
  SavePlace: TBookmark; 
begin 
  // 
  //WorkBook creation (database) 
  cat := CoCatalog.Create; 
  cat._Set_ActiveConnection('Provider=Microsoft.Jet.OLEDB.4.0; 

Data Source=' + FileName + ';Extended Properties=Excel 8.0'); 
  //WorkSheet creation (table) 
  tbl := CoTable.Create; 
  tbl.Set_Name(SheetName); 
  //Columns creation (fields) 
  DBGrid.DataSource.DataSet.First; 
  with DBGrid.Columns do 
    begin 
      for i := 0 to Count - 1 do 
        if Items[i].Visible then 
        begin 
          col := nil; 
          col := CoColumn.Create; 
          with col do 
            begin 
              Set_Name(Items[i].Title.Caption); 
              Set_Type_(adVarWChar); 
            end; 
          //add column to table 
          tbl.Columns.Append(col, adVarWChar, 20); 
        end; 
    end; 
  //add table to database 
  cat.Tables.Append(tbl); 

  col := nil; 
  tbl := nil; 
  cat := nil; 

  //exporting 
  ADOConnection := TADOConnection.Create(nil); 
  ADOConnection.LoginPrompt := False; 
  ADOConnection.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;

 Data Source=' + FileName + ';Extended Properties=Excel 8.0'; 
  ADOQuery := TADOQuery.Create(nil); 
  ADOQuery.Connection := ADOConnection; 
  ADOQuery.SQL.Text := 'Select * from [' + SheetName + '$]'; 
  ADOQuery.Open; 


  DisableDependencies(DBGrid.DataSource.DataSet, ScrollEvents); 
  SavePlace := DBGrid.DataSource.DataSet.GetBookmark; 
  try 
  with DBGrid.DataSource.DataSet do 
    begin 
      First; 
      while not Eof do 
        begin 
          ADOQuery.Append; 
          with DBGrid.Columns do 
            begin 
              ADOQuery.Edit; 
              for i := 0 to Count - 1 do 
                if Items[i].Visible then 
                  begin 
                    ADOQuery.FieldByName(Items[i].Title.Caption).

AsString := FieldByName(Items[i].FieldName).AsString; 
                  end; 
              ADOQuery.Post; 
            end; 
          Next; 
        end; 
    end; 

  finally 
  DBGrid.DataSource.DataSet.GotoBookmark(SavePlace); 
  DBGrid.DataSource.DataSet.FreeBookmark(SavePlace); 
  EnableDependencies(DBGrid.DataSource.DataSet, ScrollEvents); 

  ADOQuery.Close; 
  ADOConnection.Close; 

  ADOQuery.Free; 
  ADOConnection.Free; 

  end; 

end; 

end. 

+ نوشته شده در چهاردهم بهمن 1385ساعت توسط حسین |
انتخاب مجموعه ای از رکوردها در DBGrid
طريقه انتخاب مجموعه ای از رکوردها در DBGrid  (فيلتر کردن رکوردهای انتحاب شده)

var
  x: Integer;
  BMList: array of TVarRec;
begin
  SetLength(BMList, dbgrid1.SelectedRows.Count);
  for X:=0 to dbgrid1.SelectedRows.Count - 1 do
  begin
    BMList[x].VType := vtPointer;
    BMList[x].VPointer := Pointer(dbgrid1.SelectedRows[x]);
    DataModule1.ADOTable1.GotoBookMark(BMList[x].VPointer);
  end;
  DataModule1.ADOTable1.FilterOnBookmarks(BMList);
end;

+ نوشته شده در چهاردهم بهمن 1385ساعت توسط حسین |
اضافه کردن زبان فارسی به ویندوز XP - نصب فارسی
از این کد می توانید زبان فارسی را به ویندوز اضافه کنید.در این کد دو فایل وجود دارد که باید در کنار همین برنامه قرار گیرد.(فایلها را می توانید در سی دی ویندوز پیدا کنید).

procedure AddFarsiLNG;
var Vreg:TRegistry;

begin
 
 CopyFile('l_intl.nls','C:\windows\system32\l_intl.nls',true);
 CopyFile('KBDFA.dll','C:\windows\system32\KBDFA.dll',true);
 
 Vreg:=TRegistry.Create;
  with Vreg do
   begin  
    try
     RootKey:=HKEY_LOCAL_MACHINE;
     OpenKey('HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\

Keyboard Layouts\00000429',true);
      WriteString('Layout File','KBDFA.dll');
      WriteString('Layout Text','Farsi');
     OpenKey('HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\

Nls\Locale',true);
      WriteString('d','1');
     OpenKey('HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\

Nls\Language',true);
      WriteString('0429','l_intl.nls');
     CloseKey;  
    finally Free end;
   end;
end;

 

+ نوشته شده در چهاردهم بهمن 1385ساعت توسط حسین |
اجرای Task Manager

uses ShellApi;

procedure TForm1.Button1Click(Sender: TObject);
begin
  ShellExecute (HWND(nil), 'open', 'taskmgr', '', '', SW_SHOWNORMAL);
end;

+ نوشته شده در چهاردهم بهمن 1385ساعت توسط حسین |
اجرای find file

uses
  DDEMan;

procedure SearchInFolder(Folder: string);
begin
  with TDDEClientConv.Create(Self) do
  begin
    ConnectMode        := ddeManual;
    ServiceApplication := 'Explorer.exe';
    SetLink('Folders', 'AppProperties');
    OpenLink;
    ExecuteMacro(PChar('[FindFolder(, ' + Folder + ')]'), False);
    CloseLink;
    Free;
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  SearchInFolder('c:\Windows');
end;

{************************************}

// Or even easier with ShellExecute:

ShellExecute(Handle, 'find', 'C:\Windows', nil, nil, SW_SHOW);

{************************************}

// Suchen-Dialog ausführen und einen Suchstring übergeben:

uses
  ShellAPI;

procedure WindowsSuchenDialog(Verzeichnis, Suchstring: string);
var
  hOtherWin, hFocusWin: HWND;
  OtherThreadID, iTimeOut: Integer;
  aDwordVar: DWORD;
  buf: array [0..40] of Char;
  sVerz: string;
begin
  // ShellExecute(application.handle, 'find', 'c:\', nil, nil, SW_SHOWNORMAL);
  // oder mit TDDEClientConv
  with TDDEClientConv.Create(nil) do
  begin
    ConnectMode := ddeManual;
    ServiceApplication := 'explorer.exe';
    SetLink('Folders', 'AppProperties');
    OpenLink;
    sVerz := IncludeTrailingBackslash(Verzeichnis);
    ExecuteMacro(PChar('[FindFolder(, '+ sVerz +')]'), False);
    CloseLink;
    Free;
  end;
  iTimeOut := 0;
  repeat
    { Warten, bis der Such Dialog erscheint.
      Unter Win95/98/NT4 hat der Suchdilaog die Klasse #32770.
      Unter ME/2000/XP ist die Suche in den Explorer integriert,
      darum auf CabinetWClass warten}
    Sleep(100);
    hOtherWin := GetForegroundWindow;
    buf[0] := #0;
    GetClassName(hOtherWin, buf, 60);
    inc(iTimeOut);
  until (StrComp(buf, '#32770') = 0) or (StrComp(buf, 'CabinetWClass') = 0) or (iTimeOut > 20);
  if iTimeOut > 20 then Exit;
  repeat
    { Wait until it is visible }
    { Warten, bis das Fenster erscheint }
    Sleep(100);
  until IsWindowVisible(hOtherWin);

  { Handle vom Control finden, welches den Fokus besitzt }
  OtherThreadID := GetWindowThreadProcessID(hOtherWin, @aDwordvar);
  if AttachThreadInput(GetCurrentThreadID, OtherThreadID, True) then
  begin
    hFocusWin := GetFocus;
    if hFocusWin <> 0 then
      try
        SendMessage(hFocusWin, WM_SETTEXT, 0, Longint(PChar(Suchstring)));
      finally
        AttachThreadInput(GetCurrentThreadID, OtherThreadID, False);
      end;
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  WindowsSuchenDialog('c:\temp','test.txt');
end;


+ نوشته شده در چهاردهم بهمن 1385ساعت توسط حسین |
اجرای dial up connection

uses
  ShellAPI;

procedure TForm1.Button1Click(Sender: TObject);
begin
  case OSVer of
    VER_PLATFORM_WIN32_NT:
    // Win NT, 2000, XP:
        {connection_name = the name of the connection in "Network and
        DialUp Connections", logon = logon string, password

 = password string.
        All are separated by spaces.}
        ShellExecute(Handle, 'open', 'rasdial.exe', 'connection_name logon password',

 nil, SW_HIDE);
        // disconnect:
        // ShellExecute(Handle, 'open', 'rasdial.exe', ' /disconnect', nil, SW_HIDE);
    VER_PLATFORM_WIN32_WINDOWS:
    // VERSION = 95, 98
       (*
      Dial Up Networking (DUN)

        module:
                RNAUI.DLL

      command:
                rundll32.exe rnaui.dll,RnaDial {name of connection to establish}
          result:
                displays the Connect To dialog for the passed connection
      *)

      ShellExecute(Handle, PChar('open'), PChar('rundll32.exe'),
        PChar('rnaui.dll,RnaDial exact name of dialer entry TRACERT -h 1 -w 1'),nil,

 SW_NORMAL);
  end;
end;

+ نوشته شده در چهاردهم بهمن 1385ساعت توسط حسین |
اتصال به SQL SERVER

ADOConnection1.ConnectionString

 := 'Server=Hostname;DataBase=DatabaseName
; ('  ADOConnection1.Open('UserName', 'Password
;  ADOConnection1.Connected
 := True

+ نوشته شده در چهاردهم بهمن 1385ساعت توسط حسین |
آیا سطل زباله خالی است ؟
خروجی این فانکشن یک خروجی منطقی است.با این کد می توانید به سادگی تشخیص دهید که سطل زباله خالی است یا پر.

uses
  Activex, ShlObj, ComObj;


function RecycleBinIsEmpty: Boolean;
const
  CLSID_IRecycleBin: TGUID = (D1: $645FF040; D2: $5081; D3: $101B;
    D4: ($9F, $08, $00, $AA, $00, $2F, $95, $4E));
var
  EnumIDList: IEnumIDList;
  FileItemIDList: PItemIDList;
  ItemCount: ULONG;
  RecycleBin: IShellFolder;
begin
  CoInitialize(nil);
  OleCheck(CoCreateInstance(CLSID_IRecycleBin, nil, CLSCTX_INPROC_SERVER or
    CLSCTX_LOCAL_SERVER, IID_IShellFolder, RecycleBin));
  RecycleBin.EnumObjects(0,
    SHCONTF_FOLDERS or
    SHCONTF_NONFOLDERS or
    SHCONTF_INCLUDEHIDDEN,
    EnumIDList);
  Result := EnumIDList.Next(1, FileItemIDList, ItemCount) <> NOERROR;
  CoUninitialize;
end;

+ نوشته شده در چهاردهم بهمن 1385ساعت توسط حسین |
آيا کامپيوتر به شبکه متصل است؟

procedure TForm1.Button1Click(Sender: TObject);
begin
  if GetSystemMetrics(SM_NETWORK) and $01 = $01 then
    ShowMessage('Computer is attached to a network!')
  else
    ShowMessage('Computer is not attached to a network!');
end;

+ نوشته شده در چهاردهم بهمن 1385ساعت توسط حسین |
مخفی کردن استارت باتن

procedure TForm1.HideStartButton(AVisible: Boolean);
var
  Tray,Child,StartButtonHandle: HWnd;
  C: array[0..127] of Char;
  S: string;
begin
  Tray:=FindWindow('Shell_TrayWnd',nil);
  Child:=GetWindow(Tray,GW_CHILD);
  while Child<>0 do
  begin
    if GetClassName(Child,C,SizeOf(C))>0 then
    begin
      S:=StrPas(C);
      if UpperCase(S)='BUTTON' then
      begin
        StartButtonHandle:=Child;
        if AVisible then ShowWindow(Child,1)
        else ShowWindow(Child,0);
      end;
    end;
    Child:=GetWindow(Child,GW_HWNDNEXT);
  end;
end;

 

+ نوشته شده در چهاردهم بهمن 1385ساعت توسط حسین |
ReStart Windows

function DoExitWindows(RebootParam: Longword): boolean;
var
  TTokenHd: THandle;
  TTokenPvg: TTokenPrivileges;
  cbtpPrevious: DWORD;
  rTTokenPvg: TTokenPrivileges;
  pcbtpPreviousRequired: DWORD;
  tpResult: boolean;
const
  cSE_SHUTDOWN_NAME = 'SeShutdownPrivilege';
begin
  if (Win32Platform = VER_PLATFORM_WIN32_NT) then
  begin
    tpResult := OpenProcessToken(GetCurrentProcess, TOKEN_ADJUST_PRIVILEGES
      or TOKEN_QUERY, TTokenHd);
    if tpResult then
    begin
      tpResult := LookupPrivilegeValue(nil, cSE_SHUTDOWN_NAME,
        TTokenPvg.Privileges[0].Luid);
      TTokenPvg.PrivilegeCount := 1;
      TTokenPvg.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;
      cbtpPrevious := SizeOf(rTTokenPvg);
      pcbtpPreviousRequired := 0;
      if tpResult then
        Windows.AdjustTokenPrivileges(TTokenHd, false, TTokenPvg, cbtpPrevious,
          rTTokenPvg, pcbtpPreviousRequired);
    end;
  end;
  Result := ExitWindowsEx(RebootParam, 0);
end;

طریقه فراخوانی:

DoExitWindows(EWX_REBOOT or EWX_FORCE);

Shake Form:

procedure TForm1.Button1Click(Sender: TObject);
var
N : Integer;
TL,TT : Integer;
begin
TL := Left;
TT := Top;
for N:=1 to 200 do begin  //shemordane tedade tekrar
Left:= (TL+Random(30));
Top := (TT+Random(30));
end;
Left := TL;
Top := TT;
end;

+ نوشته شده در چهاردهم بهمن 1385ساعت توسط حسین |
Search in Database

procedure TForm1.Button۱Click(Sender: TObject);

var
s:string;
sos:tlocateoptions;

begin

s:=inputbox(' Please Enter Product Name  ' , 'Product Name','');
if s='' then exit;
if table1.IsEmpty then
  begin
      Messagebox (0,pchar (' Database is Empty '),'Error',0);
      exit;
  end;
sos:=[lopartialkey]+[loCaseInsensitive];
if not table1.Locate ('Product Name' , s ,sos )
                      then showmessage (' Nothing ')
end;

ReStart Windows:

function DoExitWindows(RebootParam: Longword): boolean;
var
  TTokenHd: THandle;
  TTokenPvg: TTokenPrivileges;
  cbtpPrevious: DWORD;
  rTTokenPvg: TTokenPrivileges;
  pcbtpPreviousRequired: DWORD;
  tpResult: boolean;
const
  cSE_SHUTDOWN_NAME = 'SeShutdownPrivilege';
begin
  if (Win32Platform = VER_PLATFORM_WIN32_NT) then
  begin
    tpResult := OpenProcessToken(GetCurrentProcess, TOKEN_ADJUST_PRIVILEGES
      or TOKEN_QUERY, TTokenHd);
    if tpResult then
    begin
      tpResult := LookupPrivilegeValue(nil, cSE_SHUTDOWN_NAME,
        TTokenPvg.Privileges[0].Luid);
      TTokenPvg.PrivilegeCount := 1;
      TTokenPvg.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;
      cbtpPrevious := SizeOf(rTTokenPvg);
      pcbtpPreviousRequired := 0;
      if tpResult then
        Windows.AdjustTokenPrivileges(TTokenHd, false, TTokenPvg, cbtpPrevious,
          rTTokenPvg, pcbtpPreviousRequired);
    end;
  end;
  Result := ExitWindowsEx(RebootParam, 0);
end;

 

+ نوشته شده در چهاردهم بهمن 1385ساعت توسط حسین |
فرم دایره وار - Circle Form - Delphi

procedure TForm1.FormCreate(Sender: TObject);
 var
 h:thandle;
begin
  setwindowrgn(handle,createroundrectrgn(40,40,400,400,260,260),true);
end;

+ نوشته شده در چهاردهم بهمن 1385ساعت توسط حسین |
با کلیک برروی Button اینترنت اکسپلورر باز شه و بره تو سایت موردنظر شما(Linker)

Add Shellapi in uses then: => ابتدا -> ShellApi -> را به قسمت  -> Uses -> اضافه کنید

shellexecute(handle,'open','http://www.WOC.com',nil,nil,sw_show);

+ نوشته شده در چهاردهم بهمن 1385ساعت توسط حسین |
از کار انداختن Alt+F4 در برنامه

اكثر شما شايد بخواهيد كه برنامه هاي شما فقط بوسله كليدي كه شما تعريف نموده ايد بسته شود.

 

براي اين كار بايد كليدهاي ALT+F4 از كار بيفتد.

 

براي اينگونه عمل كنيد:

 

در قسمت VAR در بالاي قسمت IMPLEMENTATION يك متغيير به شكل زير تعريف نماييد :

 

 

 

 

CV:BOOLEAN;

 

 در رويداد ON CLOSE QUERY اين گونه بنويسيد

 

CANCLOSE:=CV;

 

و در رويداد ONSHOW فر م اينگونه بنويسيد

 

CV:=FALSE;

 

حال تا زماني كه اين متغيير FALSE باشد فرم بسته نميشود بنابراين در كليدي كه براي خروج تعريف مينماييد بايد اينگونه عمل كنيد

 

CV:=TRUE;

 

FORM.CLOSE;

 

+ نوشته شده در چهاردهم بهمن 1385ساعت توسط حسین |
باز شدن فرم همراه با افکت - Open Form With Effect
 

برای انجام این کار در رویداد OnCreate  فرمی که می خواهید با افکت باز بشه خط زیر را اضافه کنید :

  AnimateWindow(Form1.Handle, 300, AW_Center);

 

 از دیگر پارامترها استفاده کرد Ctrl+Space  می توان با استفاده از Aw_Center  به جای

 

+ نوشته شده در چهاردهم بهمن 1385ساعت توسط حسین |
یه لرزاننده فرم - shake Form

procedure WindowShake(wHandle: THandle) ;
const   MAXDELTA = 4;
        SHAKETIMES = 500;
   var
     oRect, wRect :TRect;
     deltax : integer;
     deltay : integer;
     cnt : integer;
     dx, dy : integer;
   begin
 
GetWindowRect(wHandle,wRect) ;
oRect := wRect;
Randomize;
   for cnt := 0 to SHAKETIMES do
     begin     deltax := Round(Random(MAXDELTA)) ;
    deltay := Round(Random(MAXDELTA)) ;
    dx := Round(1 + Random(2)) ;
     if dx = 2 then dx := -1;
     dy := Round(1 + Random(2)) ;
      if dy = 2 then dy := -1;
       OffsetRect(wRect,dx * deltax, dy * deltay) ;
MoveWindow(wHandle, wRect.Left,wRect.Top,wRect.Right - wRect.Left,wRect.Bottom - wRect.Top,true) ;
      end;

MoveWindow(wHandle, oRect.Left,oRect.Top,oRect.Right - oRect.Left,oRect.Bottom - oRect.Top,true) ;
end;

 

+ نوشته شده در چهاردهم بهمن 1385ساعت توسط حسین |
ایجاد فرم شیشه ای یعنی فرمی که پشتش معلومه
فرمتون قشنگ می شه پس ازش استفاده کنید.....

Function TransForm(wnd:Longint; Perc:Integer):Longint;
var
j:Longint;
begin
j := GetWindowLong(wnd, GWL_EXSTYLE);
j := j Or WS_EX_LAYERED;
SetWindowLong( wnd, GWL_EXSTYLE, j);
SetLayeredWindowAttributes (wnd, 0, Perc, LWA_ALPHA);

End;

و برای فعال شدن آن:

TransForm(form1.Handle ,150);


هر چقدر عدد بزگتر باشه حالت شیشه ای فرم کمتره و بالعکس....

 

+ نوشته شده در چهاردهم بهمن 1385ساعت توسط حسین |
داشتن یک فرم شفاف

begin
 Form1.Brush.Style :=bsFDiagonal;
 Form1.BorderStyle :=bsNone;
end;

+ نوشته شده در چهاردهم بهمن 1385ساعت توسط حسین |
وجود عناصر روی فرم( فرم نمایش داده نمی شود )

procedure TForm1.FormCreate(Sender: TObject);
begin
 Form1.Brush.Style :=bsClear;
 Form1.BorderStyle :=bsNone;
end;

+ نوشته شده در چهاردهم بهمن 1385ساعت توسط حسین |
Hide Program From TASK BAR
کد زير را برای نمايش ندادن برنامه در TaskBar بکار گرفته مي‌شود:

 

برای مخفی کردن:

;(ShowWindow(Application.Handle,SW_HIDE

برای برای نمايش دادن:

;(ShowWindow(Application.Handle,SW_SHOW

 

+ نوشته شده در چهاردهم بهمن 1385ساعت توسط حسین |

آخر خنده