به نام خدا
نرمافزارهايي از سيدمهدي موشَّح (۳۶ مورد)
خيلي سخت است، باور بفرماييد سخت است. براي يك برنامهنويس سخت است كه سورس نرمافزار
خود را در اختيار ديگران قرار دهد. سورس، تمام خلاقيت و نوآوري يك برنامهنويس است،
تمام ريزهكاريهايي كه در كار خويش ابداع كرده. وقتي دست ديگر برنامهنويسان بيافتد،
دستش رو ميشود. تكنيكهايش لو ميرود.
بر اين حسّ خود غلبه كردم؛ بخل، گفتم هر چه سورس دارم بگذارم روي اينترنت، بلكه يك نفري
يك جايي
يك روزي بينياز شود از اينكه دوباره فكر كند و دوباره كد بنويسد.
همين هم ثواب دارد و اجرش ميماند پاي آنكه بار اول اين راه را رفته و ابزاري فراهم نموده است.
اميد به كار آناني بيايد كه خادم اسلام هستند و به كار مسلمين اهتمام ميورزند.
۱. كنترل تبديل كلمه به ابجدبا زبان VB۶ نوشتهام. اولين زبان تحت ويندوزي كه ياد گرفتم، سال ۱۳۷۷. پروژه۲ را كه باز كنيد، يك كنترل است. وقتي از آن خروجي بگيريد، يك فايل OCX در اختيار شما ميگذارد كه ميتوانيد در هر نرمافزار ديگري از آن استفاده كنيد، البته ابتدا بايد رجيسترش كنيد در ويندوز. دستور regsvr۳۲ براي اين كار قابل استفاده است. پس از اين كار، پروژه۱ قابل اجرا خواهد بود، زيرا يك كاربرد از همين كنترل اكتيوايكس است.
قصد داشتم پس از بخش تبديل «واژه» به «ابجد» يك بخش ديگر هم بنويسم براي تبديل «ابجد» به «واژه». براي همين قسمت زير كنترل را طراحي كردم. هدفم اين بود كه مجموعهاي از كلمات را در نرمافزار قرار دهم كه با دادن يك عدد، تركيبي از اين كلمات به كاربر ارائه نمايد. بيشتر هم به هدف كمك به كساني كه در اشعارشان معمولاً از ماده تاريخ استفاده ميكنند. ولي ديگر فرصت نشد و اين كار را به پايان نرساندم.
ضمائم: ۱ فايل۷۴۶ دانلود
۲. نمودار بيوريتم يا زيستچرخههابرنامه را براي آزمايش و تست نوشتم تا واقعيت بيوريتم را تجربه كنم، موضوعي كه تازه مطرح شده بود و توجهات را جلب كرده. با VB.Net نوشته شده است. سه زيستچرخه قدرت فيزيكي، احساسات و عواطف و نيروي تفكر را نشان ميدهد، پس از اينكه تاريخ تولد را در جعبه پايين نرمافزار وارد كرده و دگمه Show را كليك كنيد.
وضعيت اين سه زيستچرخه را تا يك هفته بعد و يك هفته قبل از روز جاري محاسبه ميكند.
در اين نرمافزار از توابع تقويم خود داتنت استفاده كردم كه دقت بسيار بالايي دارد. داتنت از يك نگارشي به بعد تقويم شمسي را در توابع خود به كار گرفت. اطلاعات بيشتر درباره توابع تقويم شمسي در داتنت را ميتوانيد از اين نشاني به دست بياوريد: http://rastan.parsiblog.com/posts/۵۱۸
اين نرمافزار را پيش از اين در نشاني http://rastan.parsiblog.com/posts/۲۲۵ معرفي كرده بودم. ميتوانيد اطلاعات بيشتر را از اين نشاني دريافت كنيد.
ضمائم: ۲ فايل۱۵۱۵ دانلود
۳. نصبكننده نرمافزار Installerوقتي نرمافزار بُشري را براي دفتر مطالعات و تحقيقات زنان نوشتم (امروز نام آن به مركز مطالعات زن و خانواده تغيير كرده است) نياز به يك نرمافزاري پيدا كردم كه نرمافزار را در رايانه كاربر نصب كند. دلم نميخواست از ابزارهاي آماده استفاده كنم. دوست داشتم يك چيز ايراني و خودي به زبان فارسي بنويسم و البته نوشتم و همراه آن نرمافزار منتشر شد.
بعدتر همان نرمافزار نصبكننده را كلّيتر كردم، به نحوي كه قابل كاستومايز و شخصيسازي باشد. اين همان است.
در شاخه setup فايل cd.inf قرار دارد كه تمامي اطلاعات شخصيسازي در آن ثبت ميشود. نام سيدي، مسير پيشفرض نصب، نام شاخهاي كه ساخته شده و نرمافزار در آن كپي ميشود و همچنين فايلي كه بايد اجرا شود، پس از تكميل نصب. دستوراتي نيز وجود دارد براي ساختن ميانبر و رجيستر كردن كنترلها.
فايلهاي كپيشونده نيز در شاخه data قرار ميگيرند. در حقيقت تمام موجودي شاخه ديتا در پوشهاي كه در مسير داده شده ساخته ميشود قرار خواهد گرفت.
اين يك ابزار كوچك و ساده است كه به كمك آن ميتوان به سرعت نرمافزار مورد نظر خود را روي سيدي ريخته و آمده نصب تحويل كاربر داد.
ضمائم: ۱ فايل۷۴۵ دانلود
۴. فهرستبرداري از سيديحجم سيديهاي مؤسسه زياد شده بود. پيدا كردن نرمافزار سخت ميشد. دوستان ما وقت زيادي ميگذاشتند تا يك نرمافزار خاصي را براي نصب پيدا كنند. همان زمان بود كه اين ايده به ذهنم رسيد و اين نرمافزار را نوشتم.
ابزار كوچكيست. ساده كار ميكند. يك درايور را انتخاب ميكني و دگمه را كه بزني، فهرستي از تمام فايلها و پوشههاي داخل آن نمايش ميدهد. با اين ابزار توانستيم فهرستي از محتواي تمامي سيديها تهيه نموده و با جستجو در آن، فايل مورد نظر را پيدا كنيم.
البته كه امروز ابزارهاي مفصلتري وجود دارد. ولي آن روز نبود، يا در دسترس ما. اين شد كه طراحي كردم، با زبان VB۶ هم هست.
ضمائم: ۱ فايل۶۷۳ دانلود
۵. ابزار مستقل كامنتگذاري در سايتسايت نشريات نهاد نمايندگي را كه طراحي كردم، خواستند ابزاري براي كامنتگذاري هم ذيل هر مطلب وجود داشته باشد. چنين شد كه اين ابزار مستقل را با asp كلاسيك نوشتم. زباني كه آن روز در اختيار ما بود.
چرا ميگويم مستقل؟ چون يك ديتابيس مستقل دارد و هيچ وابستگي به سايت اصلي ندارد، جز يك كد كه به مطلب مورد نظر در سايت اصلي ارجاع ميدهد. من اين ابزار را بعدتر در سايت عماد و امتداد نيز استفاده كردم. براي نصب آن كافيست فايل rate.asp را در قالب يك iframe در صفحه مورد نظر درج نماييم و كد مطلب را با عنوان Art به صورت كوئري به آن پاس كنيم. در اين صورت ابتدا تمام كامنتهاي تأييد شده آن كد را نمايش داده و سپس جعبه ارسال كامنت را در اختيار كاربر ميگذارد.
صفحات ديگري براي مديريت كامنتها وجود دارد كه در بخش مديريت سايت ميتواند قرار داد و استفاده كرد.
اين ابزار با آژاكس كار نميكند، ولي رفتاري مشابه آژاكس دارد و فعاليتهاي آن دور از چشم كاربر انجام ميشود.
فايل fc.asp شامل تمامي توابع اصلي برنامه است. شاخه Theme نيز حاوي قالب نمايشي ابزار كامنت است كه متنها در اين قالب چيده شده و نمايش داده ميشود. فايل db.asp هم محتوي رمز ديتابيس و اطلاعات اصلي اتصال به آن است.
ضمائم: ۱ فايل۷۰۱ دانلود
۶. يافتن تصاوير ناقصي كوچك و بزرگسايت مؤسسه پارسا از هر كتاب دو نسخه تصوير داشت؛ يكي بزرگ و يكي كوچك. دوستي كه مسئول تصويربرداري از كتابها بود، وظيفه داشت نسخههاي كوچك را هم بسازد و با يك پيشوند خاص در شاخهاي ديگر نگهداري كند. گاهي از دستش در ميرفت و تصاوير كوچك كم ميآمدند و آن وقت بايد در ميان هزاران فايل، با چشم ميگشت تا ناقصيها را پيدا كند.
اين برنامه نشاني دو پوشه را از فايل path.ini ميگيرد و فهرستبرداري ميكند. فهرستها را با هم مقايسه كرده و نواقص تصاوير كوچك و بزرگ را به تفكيك نشان ميدهد. اين برنامه كمك زيادي به روند اتوماسيون در بخش فني مؤسسه نمود.
برنامه در چارچوب VB۶ نوشته شده است.
ضمائم: ۱ فايل۷۶۹ دانلود
۷. حذف پيشوند از نام فايلهاي تصويرهر كتابي كه وارد سامانه مؤسسه پارسا ميشد به بخش فني ميآمد و مسئول مربوطه از جلد آن تصوير ميگرفت. يك نسخه كوچك از اين تصوير با پيشوند thm_ به عنوان نسخه بندانگشتي به كار ميرفت تا در فهرستها نمايش داده شود.
اين نرمافزار را با VB۶ نوشتم تا بتواند پيشوندها را حذف نموده يا اضافه نمايد.
با داشتن سورس نرمافزار ميتوانيد هر تغييري را در كدها ثبت نماييد تا پس از اجرا روي فايلهاي شما انجام دهد.
ضمائم: ۱ فايل۶۹۰ دانلود
۸. فروشگاه كتاب عمادپنج رده از مديريت دارد با دسترسيهاي مختلف. تمام صفحات و ابزارهاي لازم براي معرفي و فروش كتاب. ويژگيهاي نرمافزار در نشاني http://movashah.ir/fa/index.php?w=work&x=۵۲۱ ذكر شده است.
پوشه Theme حاوي تمامي قالبهاي صفحات است. هر صفحه يك قالب مختص به خود در اين شاخه دارد كه با خود آن فايل هماسم است. شبيه به آنچه در داتنت به صورت خودكار انجام ميشود. اما اينجا با asp كلاسيك نوشته شده. استثنائاً ابزار اتصال به بانك سامان براي پرداخت مالي با VB.Net نوشته شده است، بعدها.
كانكشنهاي ديتابيس در فايل db.asp قابل تنظيم است.
ضمائم: ۱ فايل۸۵۲ دانلود
۹. فروشگاه آماده استفاده CMSنرمافزاري كه براي سايت عماد نوشتم خيلي موفق بود. كاربري آساني داشت و به راحتي نصب و راهاندازي ميشد. به دليل مبتني بودن بر قالب، به سادگي هم ميشد ظاهر آن را تغيير داد. روي همان سايت عماد، به درخواست كارفرما، چند بار تمام تم سايت را تغيير دادم.
بعدتر، يكي از دوستان فروشگاهي مشابه عماد خواست. اينبار نشستم و با اعمال تغييراتي در اين سايت، آن را به صورت CMS درآوردم. ديگر وابسته به مختصات عماد نبود و با هر عنواني ميشد استفاده كرد. چندين نسخه براي مشتريان مختلف نصب كردم و استفاده شد. اين نسخه همان نسخه عمومي شده است.
اگر چه باز هم سورس سايت تحت سكوي ASP كلاسيك است، ولي ديتابيس از اكسس به SQL Server ارتقا يافته است.
توضيحات بيشتر را در معرفي نرمافزار فروشگاه كتاب عماد بخوانيد.
ضمائم: ۱ فايل۷۵۱ دانلود
۱۰. ابزار فارسينويسي در سايتسايت دفتر مطالعات و تحقيقات زنان را كه طراحي ميكردم نياز شديدي به يك ابزار فارسيساز كوچك داشتم، براي استفاده در جعبه جستجوي سايت. چرا؟! زيرا آن زمان هنوز بيشتر كاربران از ويندوز ۹۸ انگليسي استفاده ميكردند و صفحه كليد فارسي روي خيلي از رايانهها نبود.
قبلتر در مؤسسه پارسا يك صفحه كليد مجازي فارسي درست كرده بودم كه ظاهري شبيه به صفحه كليد واقعي داشت. با تعداد زيادي دگمه كه با موس كار ميكرد. اما اينبار دلم نميخواست يك صفحه كليد مقابل چشم كاربر قرار دهم.
بعدتر وقتي سرويس پارسيبلاگ را طراحي ميكرديم، كارفرما چنين ابزاري را براي تمامي جعبهها خواست. من هم ابزار قبلي را آوردم و ساعتها كار كردم تا ارتقا يابد و روي تمامي مرورگرها كار كند. ابزارهاي بيشتري به آن افزودم و اين چيزي شد كه همچنان در اين سرويس وجود دارد. آخرين بار در سال ۱۳۸۸ آن را ويرايش كردم تا با آخرين تغييرات مرورگرها هماهنگ شود.
يك فايل جاوااسكريپت است كه در صورت قرار گرفتن لينك آن در داخل صفحه HTML ابزارك كوچكي را در كنار تمامي جعبههاي داراي مشخصه lang=fa قرار ميدهد. كليك كردن روي اين ابزارك كوچك، صفحه كليد را از انگليسي به فارسي تغيير ميدهد.
ضمائم: ۱ فايل۶۹۲ دانلود
۱۱. بازي فكربكر فارسي تحت داسدر نشاني http://rastan.parsiblog.com/Posts/۷۰۳ معرفي كردم اين بازي را. دبيرستان بودم كه تحت QBasic آن را نوشتم. خيلي خوب هم كار ميكرد. براي فارسي شدن نيمه دوم كدهاي اسكي هم از نرمافزار قرآني مركز نور استفاده كردم.
فايل FEKER.BAT را كه اجرا كنيد، ابتدا قرآن تحت داس اجرا ميشود و كدها را فارسي ميكند. برنامه قرآن را ببنديد تا به صورت خودكار برنامه در مفسّر بيسيك اجرا شود.
كد اصلي در فايل feker.bas است. ولي كدهاي ديگري نيز در ساير فايلهاي bas وجود دارد كه تستهاي اوليه مرا براي ايجاد انيميشن و حركت در بيسيك نشان ميدهد.
ضمائم: ۱ فايل۷۱۸ دانلود
۱۲. مرتبساز كدهاي HTMLوقتي در مؤسسه پارسا HTML مينوشتيم، كدها معمولاً به هم ميريخت و از خوانايي ميافتاد. خصوصاً با بلايي كه InterDev مايكروسافت سر كدها ميآورد.
آن روزها ابزاري نبود كه كدها را مرتّب نمايد. امروز البته هست. حتي آنلاينش هم هست. بيشتر اديتورها هم خودشان انجام ميدهند، ولي آن روز، احساس كردم به آن نياز دارم.
اين نرمافزار را با VB۶ نوشتم. بيشتر فرمها را طراحي كردم و الگوي كار را هم روي كاغذ آماده كرده بودم. تمام فرمها و بخشها را روي كاغذ كشيده و پيشبيني كردم. ولي وقتي رفتم سر كدنويسي، ناگهان تغيير سمت يافتم در مؤسسه و شدم سرپرست معاونت فني و آنقدر درگير كارهاي مديريتي كه نتوانستم اين پروژه را به اتمام برسانم.
اين ابزار قرار بود كدهاي HTML را تحليل نمايد و به صورت كنگرهدار درآورد.
ضمائم: ۱ فايل۷۱۴ دانلود
۱۳. پيوندزن پارسابيشتر صفحات سايت مؤسسه پارسا HTML بود. فقط چند صفحه اصلي با ASP نوشته شد. وقتي هم هر بخش به روز ميشد، ناگزير بوديم تمام لينكهاي مرتبط با آن را در تمامي صفحات تغيير دهيم و دستي به روز كنيم. خصوصاً اينكه گاهي ناگهان يك پوشه جديد ايجاد ميشد و بخشي از ساختار تغيير ميكرد و كلّي از لينكها از كار ميافتاد.
اين را اضافه كنيد به نرمافزار اتوماسيون داخل مؤسسه كه آن نيز وببيس بود و گرفتاري تغيير لينكها را داشت.
اين پروژه را شخصاً و بدون اطلاع مديران شروع كرده و به اتمام رساندم. ابزاري كه تمام صفحات سايت را باز ميكرد و دنبال يك لينك خاصي ميگشت و آن را با نسخه جديد جايگزين مينمود.
اين نرمافزار واقعاً كار ميكرد و جواب هم داد. نشان مديران دادم و كارش را هم نشان دادم. ولي ترديد كردند و ترسيدند وسط كار به چيزي در صفحات آسيب برساند. تأييد نشد و از آن هرگز استفاده رسمي نكرديم.
ضمائم: ۱ فايل۸۱۴ دانلود
۱۴. يابنده مشخصات IPهاي ايرانيهمان زمان كه طراحي كردم در نشاني http://rastan.parsiblog.com/posts/۱۳۰ معرفي آن را گذاشتم، همراه با لينك دانلود نرمافزار.
وقتي نرمافزارهاي تحت اينترنت مينويسي، هميشه نگران امنيت هم هستي. هكرها هستند، هميشه. سايتهاي مهم را هم مورد هجمه قرار ميدهند. نياز داشتم اطلاعات تمام IPهاي ايراني را پيدا كنم. گشتم در اينترنت و پولي بود. يك سايتي پيدا كردم كه تك به تك ميداد. نرمافزاري نوشتم و تمام اطلاعات را يك شب تا صبح استخراج كرد. اين اطلاعات را در فرمت اكسل در اين نشاني گذاشتم: http://rastan.parsiblog.com/posts/۱۲۳
اين ابزار را هم دم دستي نوشتم. روي ميز كارم باشد و هر وقت يك IP ديدم، توسط آن مشخصات صاحب IP را بيابم.
ضمائم: ۱ فايل۷۲۲ دانلود
۱۵. متنياب - استخراج اطلاعات از بانك جزواتشايد براي شما هم پيش آمده، دسترسي به يك بانك اطلاعات داريد، جستجو ميكنيد و متن را در صفحات وب در قالب HTML دريافت مينماييد. طبيعتاً ذخيره ميكنيد و بعد كه ميخواهيد استفاده كنيد، حجم زيادي مطالب بيربط و تبليغات دورتادور مطلب را گرفته است.
من از بانك اطلاعات فرهنگستان علوم اسلامي خيلي استفاده ميكردم، وقتي كه آنجا بودم، بعد از اينكه تمامي حدود هفت هزار جزوه مباحث استاد حسيني (ره) درون اين بانك قرار گرفت. صفحات HTML را كه ذخيره ميكردم، اين نرمافزار را كنار آنها كپي كرده و يكبار اجرا ميكردم. فوري تمام صفحات HTML را باز كرده، تگهاي ابتدا و انتهاي متن را پيدا نموده و متن جزوه را استخراج كرده و در فايلي با فرمت TXT ذخيره ميكرد. بعد هم فايلهاي HTML تبديل شده را به پوشهاي با همين نام منتقل ميساخت.
سورس اين برنامه به زبان VB۶ است. ميتوانيد تگ ابتدا و انتها را متناسب با منابع خود تغيير داده و متنهاي مورد نظر خود را استخراج نماييد.
ضمائم: ۱ فايل۷۱۱ دانلود
۱۶. جستجو در گزارش Logهاي سرور وبوبسرور IIS به صورت خودكار فايلهايي به عنوان Log ميسازد و تمامي دسترسيها را ثبت ميكند. در مؤسسه پارسا براي اينترنت داخلي از MS Proxy استفاده ميكرديم كه آن هم Log ميساخت.
من اين نرمافزار را نوشتم تا بتوان تمامي لاگها را ديد و در آنها جستجو كرد. زيرا حجم زياد اين فايلها و تعداد فراوانشان دسترسي به يك ركورد خاص را دشوار ميساخت.
نرمافزار MSPLOGS.EXE را براي MS Proxy نوشتم كه تست هم كرديم و كار ميكرد. بعد شروع كردم به نوشتن Reporter.exe با تغيير دادن همان پروژه اول، ولي نيمهكاره ماند و تمام نشد.
ضمائم: ۲ فايل۱۴۷۵ دانلود
۱۷. تست انتشار سريع ويروس در تمام پوشههايكبار يكروز با يكي از رفقا صحبت ميكرديم درباره ويروسها. گفتم كار سختي نيست. نمونه خواست. يك كد ساده نوشتم كه يك فايل مثلاً ويروس را در تمام پوشهها كپي كند. قديمها ويروسها معمولاً اينطور بودند. خود را تكثير ميكردند و در تمام شاخهها ميريختند. البته اخيراً كمتر ويروسي پيدا ميشود كه به اين روش توليدمثل كند.
كافيست فايل test.bat را اجرا كنيد تا فايل بغلدستي خود را در تمام پوشهها كپي كند. نگران نباشيد، بعد از اتمام كپي، يك جستجو انجام بدهيد، نام فايل بغلدستي را و همه را يكجا پاك نماييد.
اين برنامه واقعاً كه ويروس نيست، يك فايل خاليست فقط. هدف اين است كه تكثير سريع در رايانه را نشان دهد. براي آموزش مباني رايانه، براي اينكه مخاطب متوجه توانايي ويروسها بشود خوب است و كارآيي آموزشي دارد.
ضمائم: ۱ فايل۶۸۵ دانلود
۱۸. ابزار تست قالبهاي پارسيبلاگابتدا قالبهاي سرويس پارسيبلاگ نيز مانند ساير سرويسها بود؛ تگهايي كه استاندارد XML نداشتند. چند سال بعد مدير سرويس خواست تا تگهاي جديدي را متناسب با استانداردهاي جهاني طراحي كنم. فهرست اين تگها را در اين نشاني ميبينيد: http://movashah.ir/fa/index.php?w=work&x=۳۸۱
بعد از طراحي تگها، اين نرمافزار تست را هم نوشتم. قالب را با نام Template.htm در كنار نرمافزار قرار ميدهيد و ابزار pbMakeIndex.exe را اجرا ميكنيد. اگر تگها نادرست باشند، يا كم و كسري داشته باشد، اطلاع ميدهد. اگر هم سالم باشد، مطالب موقتي و تستي را به جاي تگها گذاشته و يك فايل جديد با نام index.htm ميسازد. اين فايل دقيقاً همانجوري ديده خواهد شد كه وبلاگ، پس از استفاده از اين قالب.
اين روشي بود تا بتوانيم قالبها را قبل از ارائه در سامانه پارسيبلاگ تست و ارزيابي نماييم.
ضمائم: ۱ فايل۷۳۶ دانلود
۱۹. سامانه مديريت اطلاعات پويا PDMآخرين نرمافزار مفصّلي كه نوشتم اين است. پروژه بزرگي بود و به جاهاي خوبي هم رسيد. بيش از ده نسخه از آن در اختيار مشتريان مختلف قرار گرفت و كاربرد وسيعي يافت. به دليل امكانات خوبي كه داشت.
طرح اصلي آن در نشاني http://movashah.ir/fa/index.php?w=work&x=۲۹۵ هست. معرفي كوتاهي نيز در نشاني http://rastan.parsiblog.com/posts/۲۰۹ ديده ميشود. بعد از مدتي ابزار تقطيع متن و عنوانگذاري نيز به آن اضافه شد و توانايي درختوارهسازي موضوعات كه در نشاني http://rastan.parsiblog.com/posts/۴۲۶ ميتوانيد با آن آشنا شويد.
امروز تصميم گرفتم سورس كامل آن را روي اينترنت بگذارم. هر كه خواست بردارد و استفاده كند. تماماً با VB.Net نوشته شده و با آژاكس كار ميكند. سه اينترفيس و UI مختلف هم دارد كه هر سه با يك ديتابيس مشترك كار ميكنند. آخرين UI با بوتاسترپ طراحي شده و واكنشگراست.
ضمائم: ۱ فايل۷۴۹ دانلود
۲۰. پوياگر - ساخت سريع سيدي محتواييدر مركز پژوهشهاي اسلامي صداوسيما پروژهاي كليد خورد. سال پيامبر اعظم(ص) بود و قرار بر اينكه ويژهنامههايي منتشر شود. از من خواستند كه نرمافزارهايي هم توليد كنيد تا محتواي اين نشريات را روي سيدي ارائه كنند.
با يكي از دوستان كه متخصص در فلش بود تماس گرفتم و قرار گذاشتيم برنامه ورود اطلاعاتش را من بنويسم و برنامه نمايش را او. جالب اينكه ايشان تهران بود و من قم و از راه دور با تلفن و ايميل چه همكاري عجيبي با هم داشتيم، عالي و بينقص.
بعد از اتمام اين پروژه، به ايشان پيشنهاد كردم همين را تكميل كنيم و در بازار بفروشد. ايشان هم قفل سختافزاري خريد و در برنامه ورود اطلاعات قرار داديم و با قفل به فروش رساند. اكنون كه سالها گذشته و اين نرمافزار ديگر در بازار وجود ندارد، سورس كامل آن را ميگذارم اينجا. البته بخشي كه محصول كار خودم بود. من سورس بخش نمايش را ندارم.
چند نرمافزار مشابه همين كار را ميكردند، ولي كار كردن با آنها سخت بود. ويژگي اين برنامه سادگي كار با آن است. متن را از فايل تكست ميخواند و نمايش ميدهد، سريع انتخاب ميكني و با زدن دگمههايي مشخص ميكني عنوان اصلي است يا فرعي يا متن يا... چند محصول خودم با اين نرمافزار براي مشتريان مختلف به صورت موردي ساختم. يكي همين «دست پنهان» كه به عنوان نمونه قرار دادم.
براي اجراي برنامه، كافيست تمام فايلهاي ساخته شده در پوشه Export را روي CD بريزيد. در هر دستگاهي كه برود به صورت خودكار اجرا ميشود و متن كتاب يا مجله را بر اساس فهرست نمايش ميدهد. ميتواند چندين كتاب و مجله را هم در كنار هم مديريت نمايد.
ضمائم: ۴ فايل۲۹۳۹ دانلود
۲۱. آزمونگر - ابزار ساخت آزمونهاي نرمافزاريپوياگر را معرفي كردم. پس از پايان پروژه پوياگر و استقبالي كه از آن صورت گرفت، پيشنهاد شد تا ابزار ديگري بسازيم كه آزمونهاي تستي توليد كند. به اين ترتيب ميشد با ثبت سؤال و جوابها به سرعت يك يا چند آزمون روي CD داشت.
همان سورس پوياگر را برداشتم و ابتدا كمي روي ظاهر آن كار كردم. ابزارها را گرافيكيتر و جذّابتر كردم. نرمافزار ورود اطلاعات را كه تمام كردم، بايد ابزار فلش متناسب با اين دادهها را دوستم ميساخت. نميدانم چه شد كه اين پروژه متوقف گرديد و ادامه نيافت.
البته الآن سورس كامل هست و ابزار ورود اطلاعات نيز. ميتواند از آن استفاده كند، هر كسي كه بتواند بخش نمايش اطلاعات را خودش بسازد.
ضمائم: ۱ فايل۸۱۳ دانلود
۲۲. ابزار تست قالبهاي سامانه وبرايتوقتي وبرايت را تمام كردم، سامانهاي كه توضيح مختصري از آن در اينجا هست: http://rastan.parsiblog.com/posts/۳۰ و شرح فني آن در اينجا: http://movashah.ir/fa/index.php?w=work&x=۲۹۲ اين ابزار را براي تست قالب ساختم.
اين نرمافزار كلاً با آژاكس كار ميكرد و قالبهاي آن پيچيده بود. زيرا چندين صفحه فقط در يك صفحه قرار ميگرفت. تست آن اصلاً ممكن نبود مگر با چنين ابزاري.
قالب را با اسم default.htx ساخته و در كنار نرمافزار MakeIndex.exe قرار ميدهيد. اين ابزار كه با VB۶ نوشته شده، تمام تگهاي قالب را تبديل كرده و فايل index.htm را ميسازد. عملياتهاي آژاكسي هم با يك منوي ساده در بالاي سمت چپ صفحه قابل شبيهسازيست.
ضمائم: ۱ فايل۷۳۴ دانلود
۲۳. استخراجكننده اطلاعات از صفحات وباين ابزار را براي خودم ساختم. خيلي كارم را راه انداخت. تا پيش از آن، براي استخراج هر نوع مطلبي، ابزار جداگانهاي آماده ميكردم. ولي يكبار تصميم گرفتم براي هميشه خيال خودم را راحت كنم.
دقت كرديد وقتي حجم زيادي صفحات از يك سايت را ذخيره ميكنيد، در قالب HTML، تمام صفحه پر ميشود از عناصري تكراري و به درد نخور. حالا با اين ابزار، ابتدا و انتهاي متن مورد نظر را با علائمي مشخص ميكنيد، با تگهايي كه معمولاً در صفحات وب تكرار ميشوند، سپس ابزار را راه مياندازيد. تمام متنها را جدا كرده و در يك يا چند فايل تحويل شما ميدهد، به صورت تكست خالص!
اين نرمافزار نيز با VB۶ نوشته شده است. توضيحات بيشتر را در نشاني http://rastan.parsiblog.com/posts/۲۷۰ مييابيد.
ضمائم: ۱ فايل۷۰۵ دانلود
۲۴. انتخاب نام فرزند بر اساس ابجدنرمافزار استخراج اطلاعات از صفحات وب را ابتدا براي همين پروژه ساخته بودم. مطلب از اين قرار كه در حال مطالعه، به روشي در طالعبيني رسيدم كه رمّالها استفاده ميكنند براي تعيين وضعيت يك شخص. دليل هم اين بود كه مادرم به خاطر اينكه من زن نميگرفتم نگران شده، پولي داده و رمّالي طالع مرا گفته بود. خبردار كه شدم حسّاس گرديدم و رفتم به مطالعه در اين باره. اما اينكه از كجا فهميدم مادرم اين كار را كرده، بالشم خيلي فشرده شده بود، بايستي پنبههايش، ببخشيد، الياف مصنوعياش باز ميشد. بالش را كه باز كردم، لاي پنبهها دو تا دعا با خط جنّي يافتم كه با آب زعفران نوشته شده بود. آنها را دور انداختم و ماجرا را از مادرم پرسيدم و توطئه مزبور كشف شد!
در دو كتاب روشي يافتم براي تعيين طالع از روي نام فرد و نام مادرش به ابجد. خندهام گرفت از اينكه چطور تمام سرنوشت يك انسان را به عددي كه از اسم او ساخته ميشود منسوب ميسازند! با خود گفتم، خب اگر اسم را از روي طالع انتخاب كنيم چه؟! تصميم گرفتم اين نرمافزار را بنويسم تا حال فالگيرها و رمّالها را گرفته باشم!
ابتدا روي اينترنت گشتم و هر چه بانك اسامي نوزاد يافتم با Extractor استخراج كردم، ابزاري كه خودم ساخته بودم. بعد هم اين نرمافزار را طراحي كردم و گذاشتم روي اينترنت.
چند سال بعد ديدم خيلي استقبال شده، خيليها هم اصرار داشتند روي اندرويد كار كند، اين شد كه وقتي گذاشتم و برنامهنويسي اندرويد را ياد گرفتم و يك نسخه اندرويدي هم ساختم، با همين الگوريتم. توضيحات بيشتر را در نشاني http://rastan.parsiblog.com/posts/۲۷۲ ببينيد.
ضمائم: ۱ فايل۱۵۶ دانلود
۲۵. تبديل تزاروس به فرمت PDMسامانه مديريت اطلاعات پويا قابليتهاي خوبي براي مديريت تزاروس و درختواره داشت. از طرف ديگر دوستان فهرست كتابهايي را ميدادند به تايپيست و وارد رايانه ميشد. اما اين افراد قبول نميكردند اطلاعات را مستقيم در سامانه PDM وارد نمايند. هر بار فايلها را ميفرستادند و ميخواستند تا در سامانه قرار دهم.
من از كار تكراري خوشم نميآيد و هميشه براي انجام آنها سراغ برنامهنويسي ميروم. اين برنامه را از همين رو نوشتم و پس از آن، ديگر هر وقت تزاروس ميدادند، با اين ابزار آن را تبديل ميكردم به كدهاي SQL Script و كدها را در ديتابيس وارد ميساختم.
تنظيمات كد شروع و كد پدر و كد رده براي اين است كه جايگاه اين درختواره را در ساير درختوارههاي سامانه مشخص سازد.
اين ابزار را با VB.Net نوشتهام.
ضمائم: ۱ فايل۷۰۵ دانلود
۲۶. اضافه كردن پيشوند براي فايلهاي تصويرنرمافزار كيميا را براي آقاي كيميا نوشتم. يعني نام نرمافزار را از روي شخصي گذاشتم كه مسئول تصاوير كتاب در مؤسسه پارسا بود.
ايشان ناگزير بود از هر تصوير بزرگ كتاب، يك نسخه كوچك بسازد با پيشوندي مخصوص. اين نرمافزار كمك ميكرد بعد از اينكه سايز همه تصاوير را تغيير داد، با يك دستور اسامي همه فايلها را يكجا تغيير دهد.
اين ابزار را با VB۶ در زماني نوشتم كه ابزار ديگري براي انجام اين تغييرات هر روزه در اختيار نداشتيم.
ضمائم: ۱ فايل۷۹۰ دانلود
۲۷. دستهبندي ايميلها بر اساس فرستنده و گيرندهتوضيح نرمافزار را در نشاني http://rastan.parsiblog.com/posts/۳۴۴ نوشتهام.
از همان سالي كه در مؤسسه پارسا كارم را آغاز كردم، همواره همه ايميلهايم را در قالب فايلهاي eml ذخيره ميكردم و نگه ميداشتم. يعني قريب به بيست سال ايميل در اختيار داشتم.
گاهي كه تلاش ميكردم ايميل خاصي را پيدا كنم كار سخت ميشد. زيرا فايلها مشخصاتي از فرستنده و گيرنده در نام خود نداشتند. ولي پس از اجراي اين نرمافزار، تمام فايلها در پوشههايي دستهبندي ميشوند كه بر اساس فرستنده و گيرنده چيده شدهاند. هر ايميل يكبار در پوشه فرستنده و يكبار در پوشه گيرنده قرار ميگيرد.
سرعت اجراي آن خيلي بالاست زيرا با زبان Go كه يك زبان جديد و توسعه داده شده توسط شركت گوگل است طراحي گشته است. سورس كامل را ميتوانيد دانلود كنيد.
ضمائم: ۱ فايل۶۸۸ دانلود
۲۸. تبديلكننده كدهاي مختلف به هميك برنامهنويس هميشه درگير تبديل كاراكترها و كدها به هم ميشود، چه بخواهد و چه نخواهد. من نيز شدم و دنبال ابزاري بودم كه كارم را راحت كند. اين ابزار را از همين رو نوشتم.
با جاوااسكريپت كار ميكند. در مرورگر باز ميشود و دو جعبه در اختيار شما ميگذارد؛ بالا و پايين. در وسط نيز دگمههايي قرار دارد.
فرض بفرماييد بخشي از كد HTML را ميخواهيد لابهلاي كدهاي VB يا PHP قرار دهيد. كد را در جعبه بالا قرار ميدهيد و دگمه مربوطه را ميزنيد. تمام كوتيشنماركها و آپستروفها آنطور كه بايد تبديل ميشوند و تكهاي كد در جعبه پايين در اختيار شما قرار ميگيرد كه به سادگي كپي ميكنيد در كدهاي برنامه خود.
ابزارهاي اين نرمافزار كمكم و به حسب نيازم توسعه پيدا كردند و امروزه، سالهاست كه اين ابزار روي ميز كارم و كنار دستم هست و هر وقت نياز باشد استفاده ميكنم.
ضمائم: ۱ فايل۸۰۰ دانلود
۲۹. ماكروهاي MS Wordاز سالها پيش ماكروهايي را نوشتم به حسب نياز. سالهاست فقط مصرفكننده اينها هستم و ديگر كمتر نياز به ماكرو پيدا ميكنم.
مهمترين آنها ابزاريست كه از «تصحيح خودكار» Word پشتيبان ميگيرد و دوباره بازيابي ميكند. زيرا هر بار كه اين نرمافزار را نصب ميكردم روي يك رايانه، تمام تصحيحهاي خودكار را از دست ميدادم. اصل كد را از يك سايت خارجي يافتم و اصلاح كردم و با زبان فارسي سازگار نمودم.
ماكروهايي دارم كه دو طرف يك كلمه گيومه ميگذارد، يا يك عبارت را در گيومه قرار ميدهد. ماكروهايي كه پرانتزها و كروشهها و گيومهها را برعكس ميكند، براي صفحاتي كه از اينترنت ميگيرم و پس از ورود به Word ميبينم پرانتزها پشت و رو ميشوند. ماكرويي براي تبديل كاف و ياء عربي و فارسي.
ضمائم: ۱ فايل۱۲۳۱ دانلود
۳۰. بوكماركلت پيامرسان پارسيبلاگنميدانم چرا استفاده نشد. كد جالبي بود. مدير سرويس پارسيبلاگ خواست تا ابزاري اسكريپتي بنويسم، آنقدر كوچك كه در حدّ يك بوكمارك در مرورگر بنشيند. هر وقت كاربر آن را كليك كند، جعبه كوچكي باز ميشود و محتواي اصلي صفحه را گرفته، آماده ارسال به پيامرسان پارسيبلاگ ميكند.
ايده اصلي از جناب مدير بود و ايشان راهنمايي كرد. من هم طراحي كردم و دو سه بار ايميل كردم و ايشان ايرادات را فرمودند و اصلاح شد و نهايي گرديد.
صفحه pbml.htm را باز كنيد در مرورگر. نماد پارسيبلاگ را بكشيد در نوار علاقهمنديها. حالا در هر صفحه از اينترنت كه باشيد، اگر در پارسيبلاگ قبلاً لاگين كرده باشيد، ميتوانيد با يك كليك مطلب را در پيامرسان منتشر سازيد. البته قرار بود اينطور باشد.
ضمائم: ۱ فايل۶۸۶ دانلود
۳۱. تبديل اطلاعات كتابخانه ملي به اكسلابتدا اين مطلب را بخوانيد: http://rastan.parsiblog.com/posts/۲۸۰ اين نرمافزار همين است. كارش اين است. يك بوكماركلت يا به عنواني ديگر يك اسكريپتلت است.
راهنماي كار با اين ابزار در صفحه گفته شده آمده است مفصّلاً. خيلي هم پركاربرد، براي كساني كه مدام با اطلاعات فهرستنويسي كتابخانه ملي كار دارند. دوستان ما داشتند. پيوسته هم از من ميخواستند تا تبديل كنم. اين ابزار را در اختيارشان گذاشتم و گفتم زين پس خودتان.
ضمائم: ۱ فايل۷۲۶ دانلود
۳۲. تبديل خروجيهاي نهجالبلاغه كيميانهجالبلاغه كيميا را روي گوشي همراه دارم. مطالعه كه ميكنم، گاهي مطلبي توجهم را جلب ميكند. ذخيره كه ميشود، براي هر عبارت يك فايل مستقل ميسازد.
مراجعه به فايلها مشكل بود، اين ابزار را به همين منظور با VB.Net نوشتم كه تمام فايلها را با هم يكپارچه ميكند و عنوان هر فايل را هم ضميمه ميسازد. در نهايت يك فايل در اختيارم ميگذارد تا بتوانم راحت مطالب ذخيره شده را در اختيار داشته باشم.
ضمائم: ۱ فايل۶۴۲ دانلود
۳۳. ابزار گرافيكي ويرايش قالب پارسيبلاگمدير سامانه پارسيبلاگ روزي تماس گرفت و پرسيد: آيا كار با جيكوئري را بلدي؟ گفتم: نه، ولي ياد ميگيرم! خواست يك ابزار براي ويرايش قالب پارسيبلاگ بسازم تا بتوان به سادگي بلوكهاي اطلاعات را جابهجا كرد و به شكلهاي مختلفي درآورد.
واقعاً اسم JQuery را تا آن روز نشنيده بودم. كمي مطالعه كردم و ياد گرفتم. اين ابزار را نوشتم و ايميل كردم. صفحه designer.htm را باز كنيد و روي دگمههاي ريز كنار هر عنوان كليك نماييد تا جابهجايي جعبهها را مشاهده كنيد.
ضمائم: ۱ فايل۶۹۸ دانلود
۳۴. ابزارك نمايش ساعت ديجيتال به سبك بانككارمند بانك ملّي بود. تماس گرفت و گفت مسابقه وبلاگ است. هر وبلاگي كه بهتر باشد برنده ميشود. خواست ساعتي مانند آنچه در بانكها ديده ميشود بسازم. با اسكريپت.
تصويري از ساعت موجود در بانكها ساختم و براي هر عدد يك تصوير متحرّك جذّاب طراحي كرده، اين ساعت را كلّا با جاوااسكريپت درست كردم.
ضمائم: ۱ فايل۸۳۷ دانلود
۳۵. تبديل پيامكها به فرمت قابل استفادهاز سالها پيش، وقتي نخستين گوشي اندرويدي را خريدم، هميشه پيامكهاي مهم را خروجي ميگرفتم. با استفاده از نرمافزار SMS Backup. مشكل اين خروجيها XML بودنشان بود كه خوانايي را كاهش ميداد.
اين نرمافزار را به همين منظور آغاز كردم به طراحي، تا فايلهاي خروجي اين نرمافزار را بگيرد و به صورتي تبديل نمايد كه خوانا باشد.
اين نرمافزار كه با VB۶ نوشته شده، ناقص مانده و تكميل نشده است.
بعدتر آن را تکمیل کردم و نسخه کامل در این نشانی هست: https://idpay.ir/movashah/file
ضمائم: ۱ فايل۶۸۹ دانلود
۳۶. نسخه اندرويدي انتخاب نام بر اساس ابجددر دو سه سال گذشته چند بار تلاش كردم اندرويد را فرا بگيرم؛ كدنويسي آن را. چند بار در مقاطع مختلف هم اديتورهاي كدنويسي آن را نصب كردم و چيزهاي كوچكي نوشتم. ولي انگيزه كافي و شديدي نداشتم تا به اين سمت كشيده شوم.
اصرار كاربراني كه هر چند روز يكبار كامنت ميگذاشتند در اين پست وبلاگ http://rastan.parsiblog.com/posts/۲۷۲ كه چرا فقط روي ويندوز كار ميكند، به من انگيزه داد. اينبار جدّي شدم و كار را با همّت شروع كردم و به پايان رساندم.
اين سورس كامل كدهاي برنامه به زبان جاوا براي كار روي اندرويد است. ولي فقط نسخه دمو. نسخه اصلي را بايد خريداري بفرماييد. به دليل وقت زيادي كه اين كار گرفت و نياز است تا هزينه آن تأمين شود.
ضمائم: ۱ فايل۸۲۷ دانلود
صفحه اصليبازگشت به صفحه نخست سايت
نوشتهها986طرحها، برنامهها و نوشتهها
مكانها75براي چه جاهايي نوشتم
زمانها30همه سالهايي كه نوشتم
جستجودستيابي به نوشتهها از طريق جستجو
وبلاگ1387با استفاده از سامانه پارسيبلاگ
نماها2چند فيلم كوتاه از فعاليتها
آواها10تعدادي فايل صوتي براي شنيدن
سايتها23معرفي سايتهاي طراحي شده
نرمافزارها36سورس نرمافزارهاي خودم
معرفي6معرفي طراح سايت و آثار و سوابق كاري او
فونتهاي فارسي60تعدادي قلم فارسي كه معمولاً در نوشتههايم استفاده شده است
بايگاني وبلاگ1375نسخه محلّي از نوشتههاي وبلاگ
خاندان موشّحبا استفاده از سامانه شجرهساز
خاندان حضرت زادبا استفاده از سامانه شجرهساز
فروشگاهدسترسی به غرفه محصولات فرهنگی
با اسكن باركد صفحه را باز كنيد
تماس
پيامك
ايميل
ذخيره