Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.05.07;
Скачать: [xml.tar.bz2];

Вниз

Indy TCPServer   Найти похожие ветки 

 
Frodo44   (2006-04-15 11:55) [0]

Задача: при получении команды от клиента сервер должен открыть в ворде документ.



uses
...Word2000,IdComponent, IdTCPServer....

procedure TMainForm.IdTCPServer1Execute(AThread: TIdPeerThread);
var
Ss:String;
DocName:OleVariant;
begin
DocName:="C:\boot.doc";
try
with AThread.Connection do
begin
 Ss:=ReadLn();
 if Ss="Get" then
  begin
   WordApplication1.Documents.Open(DocName,EmptyParam, EmptyParam, EmptyParam,EmptyParam,EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam);
   WordDocument1.ConnectTo(WordApplication1.ActiveDocument);
  end;
....



Проблема такая что при подключении клиента к серверу он создает поток.При получении команды от клиента сервер пытается внутри потока запустить еще один поток для открытия вордовского документа.

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


 
Eraser ©   (2006-04-16 01:24) [1]


> Frodo44   (15.04.06 11:55)

Самый логичный вариант - не создовать доп. поток для работы с вордом, а работать в AThread: TIdPeerThread.
Если уж так приспичило создать второй поток, то после его создания можно вызвать метод TThread.WaitFor.

ЗЫ в вашем коде не вижу где создаётся доп. поток внутри серверного потока.



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

Форум: "Начинающим";
Текущий архив: 2006.05.07;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.01 c
15-1144918326
_!
2006-04-13 12:52
2006.05.07
Контроль доступа к файлам и папкам


3-1142560399
soi
2006-03-17 04:53
2006.05.07
Перехват момента добавления довой записи в DBF файл из внешней пр


2-1145547338
el-magnifico
2006-04-20 19:35
2006.05.07
Excel FREE


3-1142013327
Megabyte
2006-03-10 20:55
2006.05.07
Не хочет коннектиться в с включенным LoginPrompt


15-1145086896
antonn
2006-04-15 11:41
2006.05.07
московский стрим





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский