Форум: "Основная";
Текущий архив: 2002.12.02;
Скачать: [xml.tar.bz2];
ВнизСервер приложений Найти похожие ветки
← →
Alex_Sudakov (2002-11-18 11:06) [0]Подскажите, где в инете почитать на тему создания сервера приложений на Delphi 6.
← →
Alex_Sudakov (2002-11-18 11:27) [1]А лучше даже если под D7 :)
← →
Alex_Sudakov (2002-11-18 13:05) [2]Люди! Эй! Есть тут кто-нить? :)
← →
han_malign (2002-11-18 13:13) [3]В каком смысле сервер приложений(монитор что ли), и при чем здесь версия Delphi?
← →
Alex_Sudakov (2002-11-18 13:21) [4]Сервер приложений - в смысле сервер приложений. COM приложение, у которого есть свойства и методы, и доступное с другой машины.
ЗЫ Интересует в конечном счете DCOM.
ЗЗЫ Есть великолепная статья Натальи Елмановой "Создание сервера приложений в Delphi 3", но она ксожалению уже не актуальна... Так что хочется что-нить вроде, но для D6-7.
← →
stone (2002-11-18 13:23) [5]www.compress.ru
журнал компьютер-пресс
там были статьи на эту тему
я слышал ты в старую команду "а-ля Капитоныч" вернулся
← →
Alex_Sudakov (2002-11-18 13:27) [6]2Олег: Ага. Только вопросы лучше в мыло...:)
← →
Alex_Sudakov (2002-11-18 13:29) [7]На счет compress.ru - там голая теория. А ее я уже знаю...:)
← →
stone (2002-11-18 13:35) [8]а что тебя конкретно интересует, я как раз этим занимаюсь
← →
Alex_Sudakov (2002-11-18 14:40) [9]Смысл в том, что надо из этого сервера на запрос (вызов метода), возвращать DataSet(к примеру). Как это сделать? Нашел таку вещь, как DataSetProvider, но вот как его в интерфейс засунуть... Что б на удаленной машине можно было сделать примерно так:
...
Obj:=CreateOLEObject("MyServer.MyObject");
DataSet:=Obj.GetDataSet;
...
← →
Opuhshii (2002-11-18 14:52) [10]IAppServer,.. + есть статья о мидас здесь...
"там голая теория. А ее я уже знаю...", а вам что нужно? компонент TCoolProgramWhatIWish?,..
← →
Alex_Sudakov (2002-11-18 15:02) [11]Хочется увидеть пример, не более...
← →
Romkin (2002-11-18 15:04) [12]http://delphi.mastak.ru/articles/midas2/index.html
и тому подобное
← →
stone (2002-11-18 15:09) [13]Alex_Sudakov © (18.11.02 14:40)
> DataSetProvider, но вот как его в интерфейс засунуть
в DataModule сервера приложений
а в клиенте Connection и ClientDataSet
← →
Alex_Sudakov (2002-11-19 10:45) [14]Сделал. Вот только при попытке установить connect=true, сервер виснет напрочь...:(
← →
asmith (2002-11-19 18:44) [15]Вот вполне работающий код:
1. На сервере приложений описан метод
function GetRecordset(const ConnectionString,QueryString: WideString): OleVariant; safecall;
2. Реализован так:
function TSQLAccessDriver.GetRecordset(const ConnectionString,QueryString: WideString): OleVariant;
var
Data : Recordset;
begin
Data := CoRecordset.Create;
try
//Open recordset
Data.CursorLocation := adUseClient;
Data.Open(QueryString, ConnectionString, adOpenKeyset, adLockBatchOptimistic, adCmdText);
// Disconnect from the database
Data.Set_ActiveConnection(nil);
Result := Data;
finally
Data := nil;
end;
end;
Здесь работа с ланными идет через ADO, но компоненты не используются - работаем прямо с ADO-интерфейсами.
3. В клиенте на форме связка TDBGrid-TDataSource-TADOTable, читаем рекордсет:
var
strHostName : string;
szSQL : WideString;
szConn : WideString;
srv : IDataAccessManager;
...
try
strHostName := "bla-bla";
szConn := "bla-bla";
szSQL := "select * from bla-bla";
srv := CoDataAccessManager.CreateRemote(strHostName);
ADOTable1.Recordset := IUnknown(rec.GetData(szConn, szSQL)) as _Recordset;
finally
srv := nil;
end;
...
Все.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.12.02;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.008 c