View Full Version : foxplus
kia1349
شنبه 26 فروردین 1385, 07:46 صبح
سلام به همه
این هم برنامه فاکس پلاس تحت داس برای باز کردن و درست کردن فایلهای dbf که خراب شده باشند
قول داده بودم حالا عمل کردم
rezaTavak
شنبه 26 فروردین 1385, 23:33 عصر
سلام
ممنون.
من یک تکه برنامه نوشتم چند بار هم خودم امتحان کردم فایلهای خراب را تعمیر می کرد. توی مباحث متفرقه است.
binyaz2003
یک شنبه 27 فروردین 1385, 09:58 صبح
مرسی ممنون
naderigh
چهارشنبه 04 مهر 1386, 09:29 صبح
من مواجه شدم با خرابی بانکهای فاکس 7 هر کار میکنم با هر نرم افزار و این برنامه های شما بانک درست نمیشود کسانی که دوست دارند کمک کنند لطفا ایمیل بدهند که یکی از فایلها را برایشان بفرستم
rezaTavak
پنج شنبه 05 مهر 1386, 11:14 صبح
مگه حجمشون چقدره؟
naderigh
شنبه 07 مهر 1386, 09:29 صبح
حجم فایل نسبتا زیاد میباشد
rezaTavak
شنبه 07 مهر 1386, 13:23 عصر
با اون تکه کدی که برای ترمیم نوشته ام میران تفاوت چقدر است؟
naderigh
یک شنبه 08 مهر 1386, 08:04 صبح
اتفاقا من از کد نوشته شده شما و حتی foxfix و حتی اکسل و اکسس با ایمپورت و filefix و حتی winnc برای نمایش اطلاعات ان و .... استفاده کردم با هیچ کدام موفق نشدم برام جالب بود از زمانی که با فاکس 7 برنامه نوشتم خرابی بانک اطلاعات به این شکل نداشتم ولی این مورد نمیدانم که چکار کردند که اینطوری شده که تقریبا تمام جداول دیتابیس خراب شده و انهم به این شکل و در حال حاضر برایم این اطلاعات دیگر مهم نیست چون میخواستم اگر بشود علت انرا بدانم و سپس اگر بشود ابزاری برای همچنین مشکلی داشته باشیم هم برای دوستانی که با بانکهای اطلاعات سروکار دارند و هم خودم
rezaTavak
یک شنبه 08 مهر 1386, 08:50 صبح
این نشان از مشکل دیگری میدهد که ناشی از فاکس نیست در واقع سیستم فایل خراب شده است.
یا شاید هم عمدا خراب کرده اند.
برای پیشگیری از چنین مشکلاتی استفاده از بانکهای اطلاعاتی مثل MySQL,BD2,Oracle و... پیشنهاد میشود. البته اگر خیلی مهم هستند قرار دادن این بانکها روی سرور متصل به UPS.
با نرم افزار debug حدود 10000 بایت اول آنرا بردارید و در اینجا قرار دهید.
فرض کنید نام فایل شما table1.dbf است و نام فایل تولید شده table2.dbf باشد:
debug table1.dbf
در دیباگ:
ntable2.dbf
rcx
4000
w
q
rezaTavak
دوشنبه 09 مهر 1386, 10:43 صبح
منظورم debug در داس است. پنجره داس را باز کنید و به مسیر بانکهای اطلاعاتی بروید مثلا بانک شما در c:\personal\databases است به آن مسیر بروید با دستور cd. و بعد دستورات بالا را تایپ کنید.
ببخشید من فکر کردم شما debug داس را از قبل می شناخته اید.
یا می توانید با دستورات fopen و fread,fwrtie خود فاکس هم اینکار را انجام دهید که البته یا با برنامه زیر:
a=filetostr(table1)
a=substr(a,1,10000)
b=strtofile(a,table2.tmp)
if len(b)< 1000
? "error"
endif
rezaTavak
سه شنبه 10 مهر 1386, 09:16 صبح
مشکل شما مربوط به خرابی از نوع معمولی نیست در واقع هدر فایل شما کلا با اطلاعات از بین رفته است. این مورد زمانی پیش می آید که در برنامه نویسی شما اشارگر درست کار نکند. یعنی اینکه برنامه فاکس پرو تولید شده توسط میکروسافت که با زبان سی تولید شده اشکال اساسی در مدیریت حافظه دارد.
این به شما بستگی ندارد تقصیر خود فاکس پرو است!!!
موردی که من تا بحال ندیده ام!
میزان حجم جدول چقدر بوده است؟ به کیلو بایت یا مگابایت و همچنین تعداد رکوردها؟
ممکن است اشارگر دور زده باشد. و...
ممکن است ویروسی مخرب باشد و...
naderigh
سه شنبه 10 مهر 1386, 12:02 عصر
اقا بسیار بسیار از عنایت و لطف شما ممنون هستم چون این مورد واقعا عجیب بود دوست داشتم که ابزاری برای رفع این چنین مشکلاتی باشد که زمانی از این قبیل اتفاقات افتاد راه مقابله باشد
حقیقتا من برداشتم این بود که بانکهای ویژوال فاکس خراب نمیشود چون چند سالی که من در این زمینه کار کردم گواه این بود ولی این قضیه موجب شد که یک مقدار تجدید نظر نمایم
مجددا تشکر مینمایم
rezaTavak
پنج شنبه 12 مهر 1386, 08:34 صبح
ممکنه اشکال از فاکس هم نباشه از windows باشد. یعنی اینکه اطلاعات درست در دیسک ذخیره نشده باشند.
مورد بالایی وقتی پیش می اید که اطلاعات دیسک دارای سکتور خراب باشد. یا آدرس دهی فایل مشکل داشته باشد.
در داس زیاد مشکل بالا را نداریم چون داس سریع اطلاعات را به دیسک منتقل میکند که البته در سرعت برنامه تاثیر منفی دارد اما اطلاعات از بین نمی روند.
شاید بتوان با flush در ویندوز این مشکل را حل کرد.
naderigh
پنج شنبه 12 مهر 1386, 12:17 عصر
منظورتان flush خود فاکس هست ؟ اگر یک خورده توضیح دهید ممنون خواهم بود
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.