تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] هل من طريقة لجعل نص الاتصال في ملف خارجي لكن كلمة سر قاعدة البيانات في موديول؟
#1
السلام عليكم و رحمة الله و بركاته

اخواني الاعزاء تحية طيبة لكم جميعا

سؤالي كما بالعنوان

وضعت جملة الاتصال التالية في موديول و هي تعمل جيدا

كود :
Public pss As String = "123456789"

   str As String = "provider=Microsoft.ACE.OLEDB.12.0; data source=|datadirectory|\mydb.accdb; Jet OLEDB:Database Password = " & pss & "; Jet OLEDB:Engine Type=5;"

و عندما وضعتها في ملف تكست خارجي لم تتعرف على كلمة السر pss من داخل الموديول

لكن عندما اكتب كلمة السر مباشرة بالتكست الخارجي، تعمل جيدا

هكذا
كود :
provider=Microsoft.ACE.OLEDB.12.0; data source=|datadirectory|\mydb.accdb; Jet OLEDB:Database Password = "123456789"; Jet OLEDB:Engine Type=5;

ما أبحث عنه هو طريقة لكتابة كلمة السر بداخل البرنامج و نص جملة الاتصال بملف خارجي، كما بالمثال المرفق

وجزاكم الله خيرا


الملفات المرفقة
.rar   Cstring.rar (الحجم : 615.27 ك ب / التحميلات : 9)
الرد
تم الشكر بواسطة: ابراهيم ايبو
#2
(27-08-20, 02:57 AM)WaeLx كتب : السلام عليكم و رحمة الله و بركاته

اخواني الاعزاء تحية طيبة لكم جميعا

سؤالي كما بالعنوان

وضعت جملة الاتصال التالية في موديول و هي تعمل جيدا

كود :
Public pss As String = "123456789"

   str As String = "provider=Microsoft.ACE.OLEDB.12.0; data source=|datadirectory|\mydb.accdb; Jet OLEDB:Database Password = " & pss & "; Jet OLEDB:Engine Type=5;"

و عندما وضعتها في ملف تكست خارجي لم تتعرف على كلمة السر pss من داخل الموديول

لكن عندما اكتب كلمة السر مباشرة بالتكست الخارجي، تعمل جيدا

هكذا
كود :
provider=Microsoft.ACE.OLEDB.12.0; data source=|datadirectory|\mydb.accdb; Jet OLEDB:Database Password = "123456789"; Jet OLEDB:Engine Type=5;

ما أبحث عنه هو طريقة لكتابة كلمة السر بداخل البرنامج و نص جملة الاتصال بملف خارجي، كما بالمثال المرفق

وجزاكم الله خيرا

وعليكم السلام ورحمة الله وبركاته ،،

اعمل نفس الكود للاتصال من ملف خارجي فقط قم بتعديل الباس بهذه الطريقة .


كود :
provider=Microsoft.ACE.OLEDB.12.0; data source=|datadirectory|\mydb.accdb; Jet OLEDB:Database Password = " & pass & "; Jet OLEDB:Engine Type=5;


بحيث الباسوورد مخزن في متغير pass

بالتوفيق للجميع .
يا رحمن الدنيا والآخرة ورحيمهما
الرد
#3
(27-08-20, 04:45 AM)حريف برمجة كتب : وعليكم السلام ورحمة الله وبركاته ،،

اعمل نفس الكود للاتصال من ملف خارجي فقط قم بتعديل الباس بهذه الطريقة .


كود :
provider=Microsoft.ACE.OLEDB.12.0; data source=|datadirectory|\mydb.accdb; Jet OLEDB:Database Password = " & pass & "; Jet OLEDB:Engine Type=5;


بحيث الباسوورد مخزن في متغير pass

بالتوفيق للجميع .

جزاك الله خيرا أخي حريف برمجة 

لكن هذا تحديدا ما وضعته بالمثال المرفق و يعطي خطأ (بأن الباسوورد غير صحيحة) بالرغم من تعريفها بالموديول!!
الرد
تم الشكر بواسطة: عيد مبارك , ابراهيم ايبو
#4
شوف هذا الموضوع ،،



يا رحمن الدنيا والآخرة ورحيمهما
الرد
#5
وعليكم السلام ورحمة الله وبركاته


أخي الكريم

تصحيح للكود في أول الموضوع
كود :
Public pss As String = "123456789"

   str As String = "provider=Microsoft.ACE.OLEDB.12.0; data source=|datadirectory|\mydb.accdb; Jet OLEDB:Database Password ={0}; Jet OLEDB:Engine Type=5;"

   str = string.format( str,pss)

التكست الخارجي
كود :
provider=Microsoft.ACE.OLEDB.12.0; data source=|datadirectory|\mydb.accdb; Jet OLEDB:Database Password ={0}; Jet OLEDB:Engine Type=5;
ولكن بعد قراءته يجب أن تطبق عليه string.format مع القيمة pss كما في التعديل الأول
الرد
#6
شكرا جزيلا اخواني الاعزاء و أحبتي في الله

أخي حريف برمجة

استفدت كثيرا من الفيديو و خرجت منه بالكود الاتي و يعمل جيدا

كود :
Public str As String = "provider=Microsoft.ACE.OLEDB.12.0; data source=" & IO.File.ReadAllText("Cstring.txt") & "Jet OLEDB:Database Password = 123456789; Jet OLEDB:Engine Type=5;"

و وضعت بالتكست مسار قاعدة البيانات فقط


ــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ

أخي عيد مبارك، حل عبقري و يعمل جيدا

الكود النهائي لحل أخي عيد مبارك (إن شاء الله)

في الموديول

كود :
Public pss As String = "123456789"
   Public str As String = String.Format(IO.File.ReadAllText("Cstring.txt"), pss)

و في التكست الخارجي

كود :
provider=Microsoft.ACE.OLEDB.12.0; data source=|datadirectory|\mydb.accdb; Jet OLEDB:Database Password ={0}; Jet OLEDB:Engine Type=5;
شكرا مرة أخرى و جزاكم الله خيرا

السؤال المهم الان

كيف أغير كلمة [سؤال] بالعنوان الى [تم الحل] ؟  Big Grin
الرد
#7
الاستاذ عيد اختصر الموضوع الله يجزاه خير ،،

بالتوفيق للجميع .
يا رحمن الدنيا والآخرة ورحيمهما
الرد



التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم