PDA

View Full Version : سوال: مشكلات EXE در گزارش گيري و شبكه



jalal morevaj
یک شنبه 23 آبان 1389, 14:06 عصر
با سلام خدمت اساتيد و دوستان
1- هنگامي كه برنامه EXE ميشود برخي توابع با مشكل برخورد ميكنند مثلا در گزارشات _pagetotal را نميشناسد و گزارش گيري نميكند.
2- هنگامي كه فايل EXE از روي ساير كامپيوتر هاي شبكه اجرا ميشود (تحت شبكه با قرار دادن فايل هاي اجرا كننده (5 فايل)) برخي از توابع مثل RTLJ يا _pagetotal و ... پيام خطا ميدهند كه البته با Ignor ميشود از بعضي از آنها عبور كرد. همچنين با توجه به اينكه زبان عربي و فارسي روي آن كامپيوتر نصب است (در XP) باز هم فونتها عجق و جق است
خواهش ميكنم من را راهنمائي كنيد
باتشكر
جلال

javad_1349
دوشنبه 24 آبان 1389, 09:24 صبح
با سلام خدمت اساتيد و دوستان
1- هنگامي كه برنامه EXE ميشود برخي توابع با مشكل برخورد ميكنند مثلا در گزارشات _pagetotal را نميشناسد و گزارش گيري نميكند.
2- هنگامي كه فايل EXE از روي ساير كامپيوتر هاي شبكه اجرا ميشود (تحت شبكه با قرار دادن فايل هاي اجرا كننده (5 فايل)) برخي از توابع مثل RTLJ يا _pagetotal و ... پيام خطا ميدهند كه البته با Ignor ميشود از بعضي از آنها عبور كرد. همچنين با توجه به اينكه زبان عربي و فارسي روي آن كامپيوتر نصب است (در XP) باز هم فونتها عجق و جق است
خواهش ميكنم من را راهنمائي كنيد
باتشكر
جلال
سلام
براي اشكال توابع من هم اين مشكل را داشته ام شما حتما براي استفاده از شبكه سعي كنيد تمامي ويندوزها يك جور باشد چون بعضي از ويندوزها دستكاري شده اند هرچه تغييراتي ميدهي بازهم عربي را پشتياني نميكنند
نكته ديگر درمورد فونت ها تمامي فونتهاي استفاده شده را در پوشه يا فايلهاي اجرايت كپي كن و درويندوزها نيز نصب كن بعضي مواقع لازم است از پوشه فونت واقع در پوشه ويندوز آن فونت را حذف و مجددا نصب نمايي
يك راه حل ديگر هم به نظرم رسيد ميتوني يك setup براي برنامه ات درست كني چون تمامي فايلهاي مورد نياز را خودش از سيستم pakage ميكند
در مورد exe كردن نيز دقت كنيد تمامي فايلهاي با پسوند vct و vcx به پروژه ات اضافه كني بعضي مواقع نيز فايل ريپورت چون به پروژه اضافه نشده است در محل ديگر خطا ميدهد و گزارش خروجي نمايش داده نمي شود
موفق باشيد

jalal morevaj
دوشنبه 24 آبان 1389, 14:30 عصر
باتشكر از بذل توجه شما
مشكلم تو EXE حل نشد يعني هرجا به _pagetotal برخورد ميكنه پيغام خطا ميده البته تمام فايل ها با پسوند vct و vcxدر فولدر كپي كردم ولي فايده اي نداشت لطفا راه حل ديگري پيشنهاد كنيد
متشكرم
جلال

gh_khajehzade
دوشنبه 24 آبان 1389, 14:41 عصر
سلام-میشه بفرمایید چه پیام خطایی میده؟

jalal morevaj
دوشنبه 24 آبان 1389, 15:53 عصر
بله البته
هنگامي كه كاربر از روي كامپيوتر ديگر ميخواهد برنامه را اجرا كند ابتدا پيغام :
?The resource file is not valid. Overwrite it with a new empty one
كه بايد Yes را انتخاب كنيم كه وارد برنامه شود
بعد كه وارد برنامه شد پيغام :
expression evaluator failed ميدهد كه بايد با Ignor از آن عبور كرد
هنگام گزارش گيري چه در شبكه و چه در روي كامپيوتر اصلي هنگامي كه EXE را اجرا ميكنيم
با اين پيغام مواجه شده و گزارش گيري انجام نميشود:
Vaiable '_reportoutput' is not found
كه با Ignor بايد از آن عبور كرد و اگر Cancel را بزنيم از برنامه خارج ميشود.
با تشكر
جلال

binyaz2003
دوشنبه 24 آبان 1389, 17:47 عصر
براي پيغام اول فايل هاي Foxuser.dbf و foxuser.fpt در پوشه برنامه رو پاک کنيد يکبار درستش رو ميسازه خود فاکس
خطاي دوم يا شما عبارت دستوري رو اشتباه نوشتيد يا از متغييري که وجود نداره استفاده کرده ايد در عبارتي که بنا به خط خطا بايد رفعش کنيد يا اينکه عربي رو درست تنظيم نکرده ايد
توصيه ميکنم يک روال کنترل خطا يا ErroHandling حتما براي هربرنامه داشته باشيد تا زمانيکه خطايي دريافت ميکنيد متوجه بشويد که از کجا ، چه خطي و چه خطايي رخ داده و اينکه براي برنامه هاتون setup بسازيد و سوم اينکه قبل از انتشار اون يک نمونه از اون رو روي رايانه خودتان اجرا کنيد با اين شرايط که در يک پوشه جدا از پوشه اي که داخلش برنامه رو نوشتيد، فايلها رو قرار بديد و پوشه اي رو که برنامه رو نوشتيد هم تغيير نام بديد با اين روال اگر از فايلي يا منبعي استفاده کرديد اما کپيش نکرديد براحتي پيدا ميشه

jalal morevaj
سه شنبه 02 آذر 1389, 08:58 صبح
با سلام مجدد و تشكر از وقتي كه به من اختصاص داديد
با راهنمائي هائي كه فرموده بوديد روي كامپيوتر خودم مشكل حل ميشه البته فقط زماني كه فايل EXE و DBF و CDX توي فولدر برنامه هست ولي هنگامي كه فايل هاي
GDIPLUS.DLL
MSVCR71.DLL
VFP9R.DLL
VFP9RENU.DLL
VFP9.EXE
Vfp9t.dll
Vbame.dll
را درون فولدر كپي ميكنم تا از روي شبكه ديگر كاربران بتوانند آن را اجرا كنند باز هم پيغامهاي خطائي كه
با استفاده از ( ON ERROR messge(1 نمايش ميدهد به شرح زير است
The resource file is not valid. Overwrite it with a new empty one براي شروع برنامه روي ساير كامپيوتر هاي شبكه

Foxcode table not found . is not correct version or is incompatable و متغير _pagetotal يافت نشد براي گزارش ها روي كامپيوتر اصلي (كه VFP روي آن نصب است) و ساير كامپيوتر هاي شبكه
لازم به ذكر است كه 7 فايل فوق را از روي CD نصب Vfp كپي كردم
خواهش ميكنم راهنمائي بفرمائيد
باتشكر جلال

gh_khajehzade
سه شنبه 02 آذر 1389, 10:18 صبح
مطمئن نیستم راه حل همین باشد ولی من در پروژه هام علاوه بر فایلهایی که ذکر کردید فایلهای زیر هم هست.البته vfp9.exe نیست.
msvci70
msvcp70
msvcr70
foxhhelpps9
vfp9rdeu
vfp9rrus

Esikhoob
سه شنبه 02 آذر 1389, 15:26 عصر
سلام
درسته که با کپی کردن این dll ها ممکنه برنامه کمپایل شده کار بکنه (و من هم بعضی وقتها فقط کپی میکنم) ولی اگر بخواهید اصولی کار بکنید:
Vfp9r.dll باید در کامیپیوتری که برنامه درش اجرا میشه register بشه.

در مورد _pagetotal به نظرم باید برنامه اتان را با یکبار کامل با VFP9 کمپایل کنید . . یا شاید برنامه داره با dll ورژن های قدیمی تر VFP کار میکنه.(چون ورژن هایقدیمی تر در report ها _pagetotal نداشتند)


در مورد The resource file is not valid. Overwrite it with a new empty one ، چون exe را به طور اشتراکی توی شبکه گذاشتید ، هر وقت کاربری آن را اجرا میکند ، احتمالا میخواهد همان دو فایلی که آقای Byniaz2003 گفت را در فولدر SHARE شده ایجاد کند ، در حالی که احتمالا نفر دیگری آن را ایجاد کرده.
چون فکر کنم که از آن دو فایل استفاده نکرده باشید ، پس میتوانید کاری کنید که اصلا درست نشود. در Config.FPW این خط را وارد کنید:
RESOURCE=OFF

jalal morevaj
شنبه 06 آذر 1389, 13:10 عصر
آقاي Esikhoob عزيز دست شما درد نكنه خيلي لطف كرديد
مشكل فايل reportoutput و ReportPreview بود كه در فولدر برنامه كپي نشده بود و نميدونستم كه بايد اين فايل ها را هم كپي كرد.
در مورد مشكل دوم باز هم همان مشكل به قوت خود باقي است.
لطفا به راهنمائي هاي خود ادامه دهيد.

Esikhoob
پنج شنبه 11 آذر 1389, 22:04 عصر
خوب مثل اینکه دوست دارید من راهناییتان بکنم ، . .
اگر اون راهنمایی آخر من را عملی کرده باشید و باز دارید خطا میگیرید ، برای یک چنین اشکالاتی میتوانید کل اون عبارت خطا را در GOOGLE جستجو کنید.
شایدCONFIG.FPW ای که درش RESOURCE=OFF را نوشته اید توسط فایل EXE شما خوانده نمی شود ، برای همین به نظرم یک search روی فایل CONFIG.FPW توی کامپیوتر تان بکنید و ببینید کجا ها این فایل هست ، شاید یک فایل داخل فولدهایی باشد که شما ازش غافل بودید و آنها زودتر از CONFIG.FPW شما دیده میشوند.
CONFIG.FPW یا باید به همراه project شما کمپایل شود و یا در کنار فایل EXE قرار بگیرد.

و طبق یک جستجوی مختصر که در اینترنت کردم ، کسی میگفت شاید ورژن های DLL هایتان که داخل کامپیوتر کاریر کپی کردید با هم نمیخوانده.
مثلا VFP9R.DLL مربوط به vfp9 بدون ServicePack بوده و . .. VFP9ENU.DLL مربوط به vfp9 با ServicePack بوده. با راست کلیک روی فایل های dll و زدن properties میتوانید ورژن فایل را ببینید.