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

Вниз

Одна консоль на двоих и много на одного   Найти похожие ветки 

 
TUser ©   (2004-12-08 12:10) [0]

1. Можно ли сделать общюю консоль для двух процессов?
2. Можно ли сделать более одной консоли для одного процесса?
3. Если что-то из этого можно, то как?


 
DiamondShark ©   (2004-12-08 12:50) [1]

1. Да
2. Нет
3. Для (1) -- породить один процесс из другого


 
VMcL ©   (2004-12-08 12:54) [2]

В WinXP+ можно ещё обратить внимание на AttachConsole().


 
TUser ©   (2004-12-08 13:44) [3]


> DiamondShark ©   (08.12.04 12:50) [1]
> 1. Да

Попробовал порождать один процесс от другого. Вот так
procedure TForm1.Button1Click(Sender: TObject);
begin
 if AllocConsole then
   writeln("i am first");
end;

procedure TForm1.Button2Click(Sender: TObject);
var sa:PSecurityAttributes;
   si:_STARTUPINFOA;
   pi:_PROCESS_INFORMATION;
begin
 if fileexists(edit1.Text) then begin

   fillchar(si,sizeof(si),#0);
   fillchar(pi,sizeof(pi),#0);
   si.cb:=sizeof(si);
   New(sa);
   fillchar(sa^,sizeof(sa^),#0);
   sa^.nLength:=sizeof(sa^);
   sa^.bInheritHandle:=true;
   CreateProcess(PAnsiChar(Edit1.Text),nil,nil,nil,true,0,nil,nil,si,pi);
   Dispose(sa);
   end;
end;

// Порождаемый процесс

procedure TForm1.Button1Click(Sender: TObject);
begin
 if AllocConsole then
   writeln("i am second");
end;


У Рихтера посмотрел про наследование описателей, но  там для объектов ядра - надо создавать его с нужными SecurityAttributes. Это понятно. А как сделать то же самое для консоли - при ее создании аттрибуды не указываются.


 
TUser ©   (2004-12-09 10:15) [4]

up



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

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

Наверх




Память: 0.45 MB
Время: 0.041 c
14-1101995436
TButton
2004-12-02 16:50
2004.12.26
Internal Server Error задолбаллллллллллллл!!!


6-1097076789
Константин Эдуардович
2004-10-06 19:33
2004.12.26
Сокетный движок.


8-1096004030
Submarine
2004-09-24 09:33
2004.12.26
Проблема с видеозахватом...


1-1102587491
Aleks
2004-12-09 13:18
2004.12.26
как передать фокус и узнать код символа


14-1101973399
gn
2004-12-02 10:43
2004.12.26
Взломать за 240 секунд





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский