Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.10.28;
Скачать: CL | DM;

Вниз

CreateOleObject + 1Cv77+Vista   Найти похожие ветки 

 
DimOk ©   (2007-10-03 16:15) [0]

Добрый день всем. Вопрос по Windows Vista и Delphi 2007 for Win32 от CodeGear. Я пытаюсь создать OLE объект с помощью функции CreateOleObject  следующим образом:
var App1C: Variant;
    result: Variant;
App1C :=  CreateOleObject("V77.Application");
result := App1C.Initialize(App1C.RMTrade,"/DD:\Базы_1C\ /NАдминистратор /Ppass,"NO_SPLASH_SHOW");
И в результате после долгого выполнения строчки содержащий вызов этой функции, получаю сообщение -"Ошибка при выполнении приложения-сервера". Если же выполнить эту функцию, скажем для Excel.Application - то все проходит нормально. Подскажите пожалуйсто возможна ли работа с 1Сv77  (OLE-сервер) в Vista или может быть существуют другие способы работы с OLE.
За ранее всем благодарен.


 
DimOk ©   (2007-10-04 09:24) [1]

Пришел вечером домой и попробовал все то же самое на WindowsXP и D7, результат тот же самый. Но самое интересное что данная конструкция у меня работала - окрываю старый юнит (где работало) компилирую, запускаю -"Ошибка при выполнении приложения-сервера" не пойму в чем дело :(


 
Сергей М. ©   (2007-10-04 09:39) [2]

Возможно что-то неладно с правами доступа к базе.
Попробуй перед вызовом Initialize() сделать видимым окно одноэсины (App1C.Visible = True), возможно ты увидишь окно с сообщением об ошибке, что прояснит ситуацию


 
DimOk ©   (2007-10-04 09:45) [3]


> Возможно что-то неладно с правами доступа к базе.
> Попробуй перед вызовом Initialize() сделать видимым окно
> одноэсины (App1C.Visible = True), возможно ты увидишь окно
> с сообщением об ошибке, что прояснит ситуацию

Дело в том что не выполняется:
App1C :=  CreateOleObject("V77.Application");
На этом этапе вылетает ошибка. Попробовал на VBA сделать то же самое, наверное тут дело не в среде программирования и не в ошибке вызова функции, видимо что то с 1С :)


 
Сергей М. ©   (2007-10-04 10:06) [4]


> видимо что то с 1С


Да, скорее всего так.

Попробуй вручную запустить 1С и попытаться законнектиться к нему вызовом GetActiveOleObject().


 
DimOk ©   (2007-10-04 10:12) [5]


> GetActiveOleObject()

Призапущенном 1С возврощает nil. Но я попробовал запустить прогу на другой машине, там 1с запускается :) Но там стоит версия движка 7.70.025 и компонента УРБД. Сейчас попробую поставить это все себе и запустить программу снава.


 
DimOk ©   (2007-10-04 10:30) [6]

Не выходит каменный цветок что то ...... :(


 
tesseract ©   (2007-10-04 10:35) [7]


> версия движка 7.70.025 и компонента УРБД.


У меня такой код стабильно работает от 21 до 27 релиза. Никаких проблем. Только я использую OleVariant как и рекомндуеться. Выполнении строчки реально долгое - и зависит от размеров базы. А если ошибка так ещё и реиндексация пойдёт. Под Vista работает ТОЛЬКО 27 релиз со скошенной сортировкой.


 
DimOk ©   (2007-10-04 10:39) [8]


> Под Vista работает ТОЛЬКО 27 релиз со скошенной сортировкой.

25 у меня запускается, но только ручками.... :) и ссистемными настройками. Спасибо. Будем искать 27


 
DimOk ©   (2007-10-04 10:45) [9]


> Выполнении строчки реально долгое

App1C :=  CreateOleObject("V77.Application");
Просто интресно где в этой строчке указывается ИБ.... :)

> Только я использую OleVariant как и рекомндуеться

Так я тоже делал, но ругань то на не тип возращаемого значения, а на само приложение - сервер


 
tesseract ©   (2007-10-04 11:14) [10]


> Просто интресно где в этой строчке указывается ИБ.... :)


Я думал ты про initialize - здесь она шустро должна выполняться.


 
DimOk ©   (2007-10-04 11:21) [11]


> Я думал ты про initialize - здесь она шустро должна выполняться.

А ты в Vista так пробовал делать...?


 
Сергей М. ©   (2007-10-04 11:35) [12]


> в Vista так пробовал делать


А что тебе Vista, если у тебя и под ХР те же проблемы ?

Цитирую тебя:


> попробовал все то же самое на WindowsXP и D7, результат
> тот же самый


 
DimOk ©   (2007-10-04 11:38) [13]


> А что тебе Vista, если у тебя и под ХР те же проблемы ?
>
> Цитирую тебя:

Да да, но возможно у меня и там (на работе) и дома 1с стоит не правильно, а на Windows Server 2003 данный код запускается и работает отлично. Не пойму почему у меня то не получается, а хочется программировать, отлаживать и т.п. программу не перенося ее на другой комп.....


 
Сергей М. ©   (2007-10-04 11:44) [14]

Для начала воспользуйся любой официально приобретенной версией 1С)

Говорить же о "глюках" в ломаных-переломаных дистрибутивах можно до бесконечности)


 
DimOk ©   (2007-10-04 11:44) [15]

Поставил 27 релиз - таже песня :(


 
DimOk ©   (2007-10-04 11:48) [16]


> Говорить же о "глюках" в ломаных-переломаных дистрибутивах
> можно до бесконечности)

Все официально! Нет ни каких ломаных-переломаных дистр.



Страницы: 1 вся ветка

Текущий архив: 2007.10.28;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.018 c
2-1191917927
Separator
2007-10-09 12:18
2007.10.28
StringGrid.Rows


2-1191923774
новый_
2007-10-09 13:56
2007.10.28
ValueListEditor и ComboBox


2-1191585461
Kilkik
2007-10-05 15:57
2007.10.28
Вхождение строки


3-1182192180
Lavrenty
2007-06-18 22:43
2007.10.28
Не работает сообщение (из триггера)


15-1190722116
boriskb
2007-09-25 16:08
2007.10.28
База зарплат программистов