PDA

View Full Version : کمک فوری[ فایل مورد نیاز برای ADO]



Ali_Hashemi
چهارشنبه 04 خرداد 1384, 16:36 عصر
سلام
آهای برنامه نویسا کمکم کنید.

من یه برنامه ساده با ADO و دیتابیس Access نوشتم
اما وقتی EXE این برنامه رو روی یک کامپیوتر دیگه می برم اجرا نمیشه.
بدبختی اینجاست که هیچ پیغامی نمیده. فقط اجرا نمیشه
انگار نه انگار فایلی باید اجرا بشه !
هیچ چیزی هم دیده نمیشه.

لطفا منو راهنمایی کنید در این مورد که
چه فایلها یا dll هایی مورد نیاز است.
تازه mdac 2.8 و Ado Control 6.0 هم که از طریق installshield نصب میکنم
رو کامپیوتر مقصد باز هم مشکل باقیست

در ضمن من فقط یه adoquery رو فرمم دارم با یه datasource و یک dbgrid

منتظر کمک شما هستم

Touska
چهارشنبه 04 خرداد 1384, 16:42 عصر
در سورس پروژه چیزی ننوشتی.

یا در OnCreate یا Onshow

موفق باشید :flower:

Ali_Hashemi
چهارشنبه 04 خرداد 1384, 16:45 عصر
نه به خدا

Ali_Hashemi
چهارشنبه 04 خرداد 1384, 16:49 عصر
رو سیستم خودم جواب میده آخه !
:sad2: :sad2: :sad2: :sad2:

Touska
چهارشنبه 04 خرداد 1384, 16:51 عصر
مطئنی از چیز دیگه استفاده نکردی یا Connection شما درست هست. :گیج:

Ali_Hashemi
چهارشنبه 04 خرداد 1384, 17:03 عصر
آره

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Program Files\Borland\Delphi6\Projects\Reporter\stat.mdb;P ersist Security Info=False

از هیچی استفاده نکردم
تازه فایل هم محلی هست

Touska
چهارشنبه 04 خرداد 1384, 17:23 عصر
کجا محلی هست اینجا که آدرس فایل MDB در هر کامپیو تر فرق می کنه.

:mad:

javidtaheri
پنج شنبه 05 خرداد 1384, 08:04 صبح
اشکال از
C:\Program Files\Borland\Delphi6\Projects\Reporter\stat.mdb
است.اگر در کامپیوتر دیگری همین مسیررا ایجاد کنید احتمالا برنامه ات کار میکند.ولی سعی کن این مسیر را مستقل از برنامه کنی یعنی هرجا برنامه ات نصب میشه در مسیری متناسب با دایرکتوری محل نصب دیتابیس خود را قرار بده :گیج:

Ali_Hashemi
پنج شنبه 05 خرداد 1384, 09:45 صبح
نه عزیز دل
connection string در برنامه من به طور داینامیک ساخته میشه :



if OpenDialog1.Execute Then
Begin
ADOQuery1.Close;
ADOQuery1.ConnectionString:=Format(Conection_strin g,[OpenDialog1.FileName]);
......


تازه :


const Conection_string='Provider=Microsoft.Jet.OLEDB.4.0 ;Data Source=%s;Persist Security Info=False';


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

javidtaheri
پنج شنبه 05 خرداد 1384, 10:48 صبح
در سورس پروژه چیزی ننوشتی.

یا در OnCreate یا Onshow

موفق باشید :flower:

همینو دنبال کن شک روی این ناحیه است

babak_delphi
پنج شنبه 05 خرداد 1384, 16:34 عصر
تو اون کامپیوتر Access نصب شده؟

vcldeveloper
جمعه 06 خرداد 1384, 02:30 صبح
تو اون کامپیوتر Access نصب شده؟
لازم نیست Access نصب باشه!!

gbg
جمعه 06 خرداد 1384, 10:53 صبح
سلام
از کمپوننت JEDI استفاده کردی
اگه آره و یا حتی نصبش کرده باشی و استفاده نکرده باشی این مشکل پیشمیاد
من هم همین مشکل رو داشتم
تو سورس جدی یکجا CPUINFORMATION رو بدست میاره که روی بعضی از سِستمها به اررور بر میخوره
برای حل مشکل کد JEDI رو تو TRY و EXCEPT قرار بده


procedure GetCpuInfo(var CpuInfo: TCpuInfo);
begin
CpuInfo := CPUID;
CpuInfo.IsFDIVOK := TestFDIVInstruction;
if CpuInfo.HasInstruction then
begin
if (CpuInfo.Features and TSC_FLAG) = TSC_FLAG then
GetCpuSpeed(CpuInfo.FrequencyInfo);
CpuInfo.MMX := (CpuInfo.Features and MMX_FLAG) = MMX_FLAG;
end;
end;


به این تبدیل کن


procedure GetCpuInfo(var CpuInfo: TCpuInfo);
begin
try
CpuInfo := CPUID;
CpuInfo.IsFDIVOK := TestFDIVInstruction;
if CpuInfo.HasInstruction then
begin
if (CpuInfo.Features and TSC_FLAG) = TSC_FLAG then
GetCpuSpeed(CpuInfo.FrequencyInfo);
CpuInfo.MMX := (CpuInfo.Features and MMX_FLAG) = MMX_FLAG;
end;
except
end;
end;

نام فایلی که باید تغییر کند JclSysInfo.pas
مسیر JCL+JVCL210FullInstall\JCL\source
امیدوارم مشکلت حل بشه
:confy2: :موفق:

babak_delphi
شنبه 15 بهمن 1384, 14:30 عصر
می تونی رو اون کامپیوتر دلفی نصب کنی و اونجا برنامه رو Trace کنی.