Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Процессы и сокеты [Win95/98]


Страницы:   1 2 3

balepa ©   (2006-03-10 09:13:00) 

При запросе от клиента на подключение нужно создать новый процесс и в этом процессе подключить этого клиента (Socket).


Polevi   (2006-05-23 11:15:00) [1]

Удалено модератором
Примечание: сообщения "не в тему" будут просто удаляться


begin...end   (2006-05-23 10:25:00) [2]

Удалено модератором


Polevi   (2006-05-23 10:18:00) [3]

Удалено модератором


begin...end   (2006-05-23 10:05:00) [4]

Удалено модератором


Polevi   (2006-05-23 09:51:00) [5]

Удалено модератором


SHAB   (2006-05-22 12:10:00) [6]

Удалено модератором


BiN   (2006-03-10 13:19:00) [7]

А сокеты между процессами можно передавать с помощью DuplicateHandle.


Сергей М.   (2006-03-10 12:06:00) [8]


> буду "мучиться"


Творческих тебе узбеков !


balepa   (2006-03-10 12:02:00) [9]

Спасибо отключаюсь, буду "мучиться"


Сергей М.   (2006-03-10 12:00:00) [10]


> Вызывать из OLE32.dll ?


Непосредственно из VB-программы - да, именно оттуда.


Сергей М.   (2006-03-10 11:59:00) [11]


> Подключать надо что-то ?


Разумеется !

В дан.случае - юнит ActiveX, именно там декларирован этот идентификатор.


balepa   (2006-03-10 11:58:00) [12]

Вызывать из OLE32.dll ?


balepa   (2006-03-10 11:54:00) [13]

Попробовал выдает Undeclared identifier: 'CoInitialize'.Подключать надо что-то ? Заранее Спасибо.
Почитаю.


Сергей М.   (2006-03-10 11:48:00) [14]


> в справке чето не нашел


Открываешь msdn.microsoft.com, водишь модель поиска "CoInitialize", получаешь информацию, изучаешь, делаешь выводы.


balepa   (2006-03-10 11:42:00) [15]

Огромное спасибо, за то что уделили мне время и отдельную благодарность за CoInitialize. Буду пробовать. А в справке чето не нашел но как говориться смотришь в книгу видиш фигу


Сергей М.   (2006-03-10 11:37:00) [16]


> Не был произведен вызов CoInitialize как вызвать и что это
> такое


Чтоэто - про то можно почитать в станд.справке.

А вкратце следует сделать так:

CoInitialize(nil);
try
.. здесь работаем с OLE-объектом, начиная с его создания и вплоть до его уничтожения
finally
 CoUninitialize;
end;


Сергей М.   (2006-03-10 11:34:00) [17]


> ???


Что конкретно непонятно ?


> из DLL это заработает (всмысле откроется документ Excel)?


А куда оно денется !)


> если делать вот так ето будет правильно


Кое-что правильно, но многое требует серьезной доработки-переработки ..


> почему без него не работает Grafik


Что значит "не работает" ?


balepa   (2006-03-10 11:33:00) [18]

p.s. Без Synchronize. Не был произведен вызов CoInitialize как вызвать и что это такое


balepa   (2006-03-10 11:29:00) [19]


> Ну так а о каком же вызове XL.Workbooks.Open может идти
> речь, если сам объект Application не был создан ?

???
Да я уже подумывал о полном переходе на Delphi. Тока переписывать не очень охота с VB на Delphi.
Думаете из DLL это заработает (всмысле откроется документ Excel)?

Как думаете если делать вот так ето будет правильно

> procedure TForm1.Button1Click(Sender: TObject);
> begin
>   Thread:= MThread.Create(True);
>   Thread.Priority:= tpLower;
>   Thread.Resume;
> end;


Модуль потока

> procedure MTHread.Grafik;
> var
>   s: string;
>   Excel, Sheet: Variant;
> begin
>   Excel:= CreateOleObject('Excel.Application.8');
>   Excel.Visible := False;
>   Excel.Workbooks.Open('c:\Мои документы\Книга1.xls');
>   Sheet := Excel.Workbooks[1].WorkSheets[1];
>   gs:= sheet.cells[1,1]; //[строка, столбец]
>   Form1.Label1.Caption:= gs;
>   Excel.Workbooks.Close;
>   Excel.Quit;
> end;



> procedure MThread.Execute;
> var
>   s: string;
>   Excel, Sheet: Variant;
> begin
    //без Synchronize не срабатывает
>   Synchronize(grafik)
> end;

Где можно подробнее узнать что делает Synchronize (вроде надо вызывать при обращении к VCL, тогда почему без него не работает Grafik, или Excel тоже входит в VCL)


Сергей М.   (2006-03-10 11:10:00) [20]


> дальше этой строчки п-ра не выполнялась


Ну так а о каком же вызове XL.Workbooks.Open может идти речь, если сам объект Application не был создан ?

И вообще я бы посоветовал обратиться со своей проблемой в какой-либо форум по VB .. Здесь все-таки Делфи-форум ..

Либо переноси нужную тебе функциональность (сокеты там или что-то еще) в DLL, написанную в Делфи, и вызывай из нее готовые ф-ции в своей VB-программе ... так и проще и разговор предметнее


Страницы:   1 2 3

Наверх

Титульная страница Поиск, карта сайта Написать письмо