الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

Could not lock file

مغلق
بدأه العقده في 2 مارس 2006 · 7 رد · 714 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

اخواني اثناء تنفيذ Invoke للـ Web Service يظهر عندي هذا الخطأ

مع العلم انه تم ربطها بملف قاعدة البيانات اكسس 2003 باستخدام OleAdptare وكل شي تمام وعرض البيانات بالداتا ست Ok بس اثناء تشغيلها على المتصفح يظهر الخطا هذا الرجو من لديه الحل ان ينقذني به .

System.Data.OleDb.OleDbException: Could not lock file.
   at System.Data.OleDb.OleDbConnection.ProcessResults(Int32 hr)
   at System.Data.OleDb.OleDbConnection.InitializeProvider()
   at System.Data.OleDb.OleDbConnection.Open()
   at System.Data.Common.DbDataAdapter.QuietOpen(IDbConnection connection, ConnectionState& originalState)
   at System.Data.Common.DbDataAdapter.FillFromCommand(Object data, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
   at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
   at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet)
   at vbwebs.Service1.GetAll_DATA() in c:\inetpub\wwwroot\vbwebs\Service1.asmx.vb:line 130

ليس كل ما يتمناه المرء يدركه

arabteam2000.gif

#2

^

ليس كل ما يتمناه المرء يدركه

arabteam2000.gif

#4

اخي اسماعيل الله يعطيك العافيه لهتمامك بموضوعي جربت طريقتك وفعلت التالي :

كان ConnectionString :

Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Registry Path=;Jet OLEDB:Database Locking Mode=1;Data Source="C:\db1.mdb";Jet OLEDB:Engine Type=5;Provider="Microsoft.Jet.OLEDB.4.0";Jet OLEDB:System database=;Jet OLEDB:SFP=False;persist security info=False;Extended Properties=;Mode=Share Deny None;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Create System Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;User ID=Admin;Jet OLEDB:Global Bulk Transactions=1

وحذفت Locking Mode=1 لانها الوحيده التي وجدتها Locking واصبحت كالتالي:

Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Registry Path=;Jet OLEDB:Database;Data Source="C:\db1.mdb";Jet OLEDB:Engine Type=5;Provider="Microsoft.Jet.OLEDB.4.0";Jet OLEDB:System database=;Jet OLEDB:SFP=False;persist security info=False;Extended Properties=;Mode=Share Deny None;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Create System Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;User ID=Admin;Jet OLEDB:Global Bulk Transactions=1

وعند التنفيذ ظهر الخطأ التالي :

System.Data.OleDb.OleDbException: Could not find installable ISAM.
   at System.Data.OleDb.OleDbConnection.ProcessResults(Int32 hr)
   at System.Data.OleDb.OleDbConnection.InitializeProvider()
   at System.Data.OleDb.OleDbConnection.Open()
   at System.Data.Common.DbDataAdapter.QuietOpen(IDbConnection connection, ConnectionState& originalState)
   at System.Data.Common.DbDataAdapter.FillFromCommand(Object data, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
   at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
   at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet)
   at sss.DataService.GetDataNow() in c:\inetpub\wwwroot\sss\Service1.asmx.vb:line 119

علما ان الكود الداخلي الذي كتبته هو :

 <WebMethod()> Public Function GetDataNow() As DataSet1
        Dim x As New DataSet1
        OleDbDataAdapter1.Fill(x)
        Return x
    End Function

ارجو مساعدتي للتوصل لحل وشكر اولا واخير على اهتمامك اخي اسماعيل

ليس كل ما يتمناه المرء يدركه

arabteam2000.gif

#5

اخي الفاضل اسماعيل لقد جربت بالكود ونجح الامر ولله الحمد :

Imports System.Web.Services
Imports System.Data.OleDb
Imports System.DBNull

<System.Web.Services.WebService(Namespace:="http://tempuri.org/sss/Service1")> Public Class DataService
    Inherits System.Web.Services.WebService

    Dim ds As New DataSet
    
    <WebMethod()> Public Function GetDataNow() As DataSet
        OpenConniection()
        Return ds
    End Function


    Private Sub OpenConniection()
        Dim Conn As New OleDbConnection
        Dim Rc1 As New OleDbDataAdapter


        Conn.ConnectionString = "Provider=Microsoft.jet.OLEDB.4.0;Data Source=C:\REPORTS.mdb"
        Rc1 = New OleDbDataAdapter("select * from W_Report", Conn)
        Rc1.Fill(ds)
        Conn.Close()
    End Sub

End Class

ارجو ان لاتحرمني من ملاحظاتك على هذا الكود قد يكون في شيء في غير موضوعه او اي نقص ولك جزيل الشكر والتقدير ...

تم تعديل هذه المشاركة بواسطة العقده في 3 مارس 2006 في 10:09

ليس كل ما يتمناه المرء يدركه

arabteam2000.gif

#6

واستفسار بسيط كيف اعرض او استدعي WebForm2 من داخل WebForm1 .

ليس كل ما يتمناه المرء يدركه

arabteam2000.gif

#7

فهمت أن استدعاء webform2 من webform1 هو:

Response.Redirect("webform1.aspx", true);

هذه التعليمة توجهك إلى الصفحة webform1.aspx ...

أما إذا أردت أن تقوم بتضمين صفحة داخل صفحة webform1.aspx يجب أن تستخدم Web User Control من أجل تحقيق ذلك ...

#8

او من الممكن استخدام <iframe> لتضمين صفحه بداخل صفحه

هذا الموضوع مغلق.

مواضيع مشابهة