ورود

View Full Version : سوال: فراخوانی بانک اطلاعاتی در قالب فرمت exe در اکسس 2007



c4soft
چهارشنبه 24 آبان 1391, 19:21 عصر
با سلام
دوستان :
آیا کد ارائه شده ی زیر که مربوط به نرم افزار AutoIt میباشد فقط برای اجرایی کردن فایل اکسس 2003 است ؟
در اکسس 2007 چه تغییراتی باید در آن حاصل گردد ؟
چندین بار تست کردم ولی متاسفانه به جواب نرسیدم
درصورت امکان راهنمایی کنید
متشکرم

$var = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Win dows\CurrentVersion", "ProgramFilesDir") $Txt = '"' & $var & "\Microsoft Office\Office11\Msaccess.exe" & '"' & " " & '"' & @ScriptDir & "\Register.pip" & '"' $Lev = @ScriptDir & "\LevelS.exe" Run($Lev,"",@SW_HIDE) Run($Txt,"",@SW_HIDE)

کد فوق توسط آقای smderfan (http://barnamenevis.org/member.php?17960-smderfan) در تاپیک فراخوانی بانک اطلاعاتی در قالب فرمت EXE (http://barnamenevis.org/showthread.php?117755-%D9%81%D8%B1%D8%A7%D8%AE%D9%88%D8%A7%D9%86%DB%8C-%D8%A8%D8%A7%D9%86%DA%A9-%D8%A7%D8%B7%D9%84%D8%A7%D8%B9%D8%A7%D8%AA%DB%8C-%D8%AF%D8%B1-%D9%82%D8%A7%D9%84%D8%A8-%D9%81%D8%B1%D9%85%D8%AA-EXE) ارسال شده

c4soft
پنج شنبه 25 آبان 1391, 21:17 عصر
سلام مجدد
مسیر FilesDir رو هم تغییر دادم :
Microsoft Office\Office11\Msaccess.exe
office11 مسیر ورژن 2003 هست
من office12 رو جایگزین کردم متاسفانه جواب نداد
بازم دنبال راه حل هستم ...

c4soft
سه شنبه 30 آبان 1391, 18:11 عصر
آیا راهی هست ؟!!

c4soft
چهارشنبه 01 آذر 1391, 18:41 عصر
سلام آقاي بهرامي
خيلي ازتون متشكرم از بابت آموزش اين مساله
همه ي راه ها رو تست كرده بودم ولي جواب نگرفتم...
حالا :
فرمي رو كه با كد فوق در ويژوال بيسيك ايجاد ميكنم بعد از اجراي اكسس بطور خودكار بسته ميشه؟ يا اينكه بايد در روال Ontimer اون دستور لازم رو بدم ؟!

nazanin_90
چهارشنبه 01 آذر 1391, 22:40 عصر
بنده هم خدمت شما سلام عرض مي كنم
راستش متوجه نشدم كه آيا موفق به اجراي فايل اكسس با استفاده از كد هاي فوق و تهيه فايل اجرائي وي بي شديد يا نه ؟
علي ايحال در خصوص بسته شدن اتوماتيك فرم وي بي بعد از اجراي اكسس فرقي نمي كند كه كد فوق را در رول load قراربدهيد يا در رول on timer.
قرار دادن كد هاي فوق در روال load باعث ميشود بلافاصله عمليات اجراي فايل اكسس انجام شده و بعد فايل وي بي بسته شود ولي در روال ontimer بسته به زماني كه براي خصوصيت timer interval در نظر مي گيريد. عمل اجراي فايل اكسس كمي با تأخير انجام ميشود .
همانطور كه دركد فوق ملاحظه مي فرمائيد ابتدا فرم وي بي در حالت مخفي (unvisible) باز ميشود و در آخر با كلمه كليدي end بسته ميشود.
يك حالت ديگر هم ميتوان براي بسته شدن فرم وي بي بكار برد و آن اينكه بعد از اجراي اكسس اين فرم بسته نشده و در همان حالت مخفي باز باشد و بعد از بسته شدن فايل اكسس اين فرم نيز بسته شود . خاصيت اين حالت اين است كه با بكار بردن پيغام « برنامه در حال اجرا بوده و اجراي مجدد امكانپذير نمي باشد »در متد if ....end if از اجراي مجدد جلوگيري كنيد.
در خدمت شما هستم
خدانگهدار
سلام و تشكر
آموزش خوبي است براي كسانيكه علاقه مندند ازفرم وي بي براي اجراي فايل اكسس آن هم با پسوندي غير از پسوند mdb استفاده نمايند.
و اما يك سؤال:
اگر فرم وي بي در حالت مخفي باز باشد بابسته شدن برنامه اكسس چگونه و با چه دستوري آن را مي بنديم ؟
با تشكر

mosaArabi
دوشنبه 06 آذر 1391, 10:26 صبح
سلام مجدد
مسیر FilesDir رو هم تغییر دادم :
Microsoft Office\Office11\Msaccess.exe
office11 مسیر ورژن 2003 هست
من office12 رو جایگزین کردم متاسفانه جواب نداد
بازم دنبال راه حل هستم ...

اینم فایل مخصوص autoit آماده شده جهت 2007. فقط در انتهای مسیر آفیس 2007 نام و پسوند فایل خودت را حتما جایگزین کن والا جواب نمی گیری
$Txt = '"' & $var & "\Microsoft Office\Office12\Msaccess.exe" & '"' & " " & '"' & @ScriptDir & "\Register.pip" & '"'
قسمت قرمز شده- ضمنا اکسس خودت را هم قبل از اجرا باید low secoretyفعال کرده باشی(عکس ضمیمه)

موفق باشی

c4soft
دوشنبه 06 آذر 1391, 19:58 عصر
سلام مجدد دوستان عزیز
آقای بهرامی عزیز
من بمدت پنج روز رفته بودم شمال مراسم عزاداری رو اونجا بودم
از این بابت عذرخواهی میکنم وگرنه مشتاقانه داشتم دنبال میکردم با اینکه اینترنت هم ندارم و از کافی نت دنبال میکنم
برای من حیف شد که پست های فوق رو پاک کردید
در هر حال متشکرم از همه دوستان
کاش یکی دنبال میکرد این بحث رو

c4soft
دوشنبه 06 آذر 1391, 20:21 عصر
سلام آقای mosaArabi متشکرم