0
- 25.04.2020 - 00:15
|
Есть две обработки обмена с разными сайтами, первой нужна компонента 1срр, которая грузится в глобальном модуле, и второй обработке нужна своя компонента 1срр, которая грузится в модуле обработки, но не работает, можно ли как - нибудь проверить, что компонента уже загружена и выгрузить одну 1срр и загрузить другую? или как еще обойти эту ситуацию? | |
1
- 25.04.2020 - 06:05
|
1 - зачем 2 компоненты 1с++? в чем их разница. Откуда требование грузить вторую из обработки? 2 - узнать загружена ли первая можно путем создания в попытке какого-либо ее объекта Можно ничего и не узнавать, а просто выгружать, неважно загружена ли она | |
2
- 25.04.2020 - 08:00
| А как выгрузить компоненту 1cpp? | |
3
- 25.04.2020 - 11:20
| По поводу выгрузки кажетс я наврал, нельзя выгрузить | |
4
- 30.04.2020 - 18:08
|
2-mrOrange > её не надо загружать, она уже загружена. Сразу создаём в модуле обработки нужный объект (потому что 1срр же уже загружен ПриНачалеРаботыСистемы() в глоб.), если он не создаётся, считаем, что компонента ещё не загружена и загружаем её. типа такого: Попытка Объект2 = СоздатьОбъект( "ОбъектДляВторойОбработки" ); Исключение ЗагрузитьВнешнююКомпоненту(КаталогПрограммы() + "1CPP.dll"); Объект2 = СоздатьОбъект("ОбъектДляВторойОбработки" ); КонецПопытки таким образом, мы проверили, загружена ли компонента. отсюда, например https://forum.mista.ru/topic.php?id=674668 | |
5
- 06.05.2020 - 17:52
|
А на Windows 7 нормально работают прямые запросы? У меня что-то не соединяется с базой файловой. Использую вот такую строку соединения: СтрокаСоединения = "DRIVER=Microsoft Visual FoxPro Driver;Deleted=Yes;Null=Yes; |Collate=RUSSIAN;BackgroundFetch=Yes;Exclusive=No; SourceType=DBF;SourceDB=" + КаталогИБ(); БД = СоздатьОбъект("ODBCDataBase"); Успешно = БД.Соединение(СтрокаСоединения); Возвращает Успешно = 0 | |
6
- 06.05.2020 - 18:05
|
(5)Отлично работают. И на Windows 10) Но я использую иное подключение: Функция глПодключениеOLEDB (КаталогБД) Экспорт OLEDB = CreateObject("OLEDBDATA"); OLEDB.Connect ("Provider = VFPOLEDB.1; //|Deleted = Yes; |Data Source = " + КаталогБД + "; |Mode = ReadWrite; |Extended Properties=""; |Exclusive = No; |User ID = ""; |Password =""; |Mask Password = False; |Collating Sequence = RUSSIAN; |DSN = """); SQLComm = OLEDB.CreateCommand(); SQLComm.Выполнить("Exec('SET TABLEVALIDATE TO 0')");// Отключили блокировки Возврат SQLComm; КонецФункции //глПодключениеOLEDB() | |
7
- 07.05.2020 - 03:01
| 6-USSR > спасибо, по OLEDB заработало | |
8
- 07.05.2020 - 19:45
| (7)Будут вопросы, обращайтесь) | |
| Интернет-форум Краснодарского края и Краснодара |