Як налаштувати ADOConnection для роботи в мережі?
Потрібно, щоб базою даних (ADO + Access) могли користуватися кілька людей в мережі (з расшаренной папки). Які для цього потрібні внести зміни в рядок з'єднання:
ADOConnection.ConnectionString: = "Provider = Microsoft.Jet.OLEDB.4.0;" +
# XA0; "Data Source =" + ExtractFilePath (Application.ExeName) + "BAZA \ Base.mdb;" +
# XA0; "Mode = Share Deny None;" + "Persist Security Info = False;" +
# XA0; # XA0; "Jet OLEDB: Database Password =" "+ pasw +" "";
або які права доступу повинні бути у папки з базою і програмою?
Мені здається що.
Data Source = // Ім'я компа (на якому прога і база) / ім'я розшарений ресурсу / ім'я бази
Власне все, в деталях міг злегка помилитися, оскільки вдома немає мережі.
А на підприємстві все працює як годинник :)
> Data Source = // Ім'я компа (на якому прога і база) / ім'я розшарений
> Ресурсу / ім'я бази
ExtractFilePath (Application.ExeName) + "BAZA \ Base.mdb;
нормально спрацьовує! Проблема, можлива в Mode = Share Deny None. (Доступі)
А які у Вас настройки безпеки у каталогу з базою? Повний доступ?
У мене рядок підключення досить проста. Крім наведеного ще:
Persist Security Info = False; Jet OLEDB: Database Password =
Ну а цілком:
Provider = Microsoft.Jet.OLEDB.4.0; User ID = Admin; Data Source =
то, що ви робили у попередньому пості +
Persist Security Info = False; Jet OLEDB: Database Password =
і природно сам Password
Ні! До каталогу! Папці - який доступ?
Як люди по сітці запускають твою прогу?
(Безпека, доступ -> відкрити загальний доступ і т.д.)
> Постараюся знайти і викласти
Буду вдячний!
> Я створюю загальний ресурс програмно
Не уявляю собі як це. Щоб людині запустити програму з базою, йому потрібен доступ до папки з нею. Або як?
База швидше за все лежить на певному комп'ютері. І швидше за все цей комп і "повинен вирішувати" чи давати доступ до цієї бази. Тому і пропонується шлях, при якому загальний доступ організовується (або надається) тільки при запуску певної програми на цьому комп'ютері (хоча це зовсім і не обов'язково). Можна це організувати і в автозапуску. Хоча, необхідно погодитися з тим, що комп'ютер, на якому знаходяться прога і база потрібно включити (це я до того, що загальний доступ можна організовувати при запуску певної програми).
Але до мене вона не може бути застосована: щоб відкрити доступ за допомогою своєї програми (до каталогу), потрібно спочатку її запустити, а щоб її запустити з мережі, мені потрібен вже окритія до неї доступ!
Так треба міняти щось в ADOConnection.ConnectionString. Або розбиратися з адміном?
Data Source = // Ім'я компа (на якому прога і база) / ім'я розшарений ресурсу / ім'я бази
Давно б перевірили, на своєму комп'ютері, підставивши своє ім'я і звернувшись до себе як до віддаленого PC /
А взагалі я рекомендую поставити # XA0; Microsoft Virtual PC, на їх же сайті, безкоштовна. Завжди тести на ній проводжу. Поставте тільки апдейти все - дуже зручна штука виходить.