Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > .NET > WPF, UWP, WinRT, XAML
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 13.10.2015, 16:29   #11
Alex11223
Модератор
Заслуженный модератор
 
Регистрация: 12.01.2011
Сообщений: 17,362
Репутация: 3353

icq: 512-765
skype: alexp.frl
По умолчанию

Цитата:
Сообщение от Smitt&Wesson Посмотреть сообщение
Если по С++, могу подсказать. Если по-Паскалю (Делфи), тут я - пас.
А если и не по С++, и не по Паскалю, и не по Дельфи?
Alex11223 на форуме   Ответить с цитированием
Старый 13.10.2015, 16:39   #12
Smitt&Wesson
Профессионал
 
Аватар для Smitt&Wesson
 
Регистрация: 31.05.2010
Адрес: г. Киров
Сообщений: 13,919
Репутация: 622

skype: forwardbiznes
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
А если и не по С++, и не по Паскалю, и не по Дельфи?
Ни хрена себе.
Изображения
Тип файла: gif flaking_out_maus.gif (20.8 Кб, 17 просмотров)
__________________
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder
Smitt&Wesson вне форума   Ответить с цитированием
Старый 14.10.2015, 22:24   #13
ninja2
Форумчанин
 
Регистрация: 13.08.2015
Сообщений: 193
Репутация: 18
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
Нативные или дотнетовские?
хз. какие, просто ссылку на длл подключил и все заработало. В C# без заголовочных файлов подключается.
ninja2 вне форума   Ответить с цитированием
Старый 14.10.2015, 22:34   #14
Alex11223
Модератор
Заслуженный модератор
 
Регистрация: 12.01.2011
Сообщений: 17,362
Репутация: 3353

icq: 512-765
skype: alexp.frl
По умолчанию

Ну значит это дотнетовская сборка. Нативные библиотеки (например, из С/С++) сложнее подключать. (надо самому объявлять структуры и функции с [DllImport] и т.п.)

Еще большинство популярных дотнетовских библиотек доступны в NuGet, так что обычно можно даже не загружать и подключать файлы самому, а просто нажать Manage NuGet packages в меню и выбрать нужную (или командой из консоли студии)

Последний раз редактировалось Alex11223; 14.10.2015 в 22:40.
Alex11223 на форуме   Ответить с цитированием
Старый 16.10.2015, 17:35   #15
ninja2
Форумчанин
 
Регистрация: 13.08.2015
Сообщений: 193
Репутация: 18
По умолчанию

А как процесс созданный функцией Process удалить? Пытаюсь просто закрыть, ниче не получается
Код:

svnCommand = Process.Start(psi);//создаем процесс

//пока существует процесс
while(!svnCommand.HasExited)
{
    if(!m_flag)
    {
        svnCommand.Close();//закрываем процесс
        svnCommand.Dispose();//освобождаем ресурсы
        break;
    }
...
...
...
...

Из цикла пайпа выходит, а программа которая запущена продолжает работать в фоне, а нужно чтобы ее не было.
ninja2 вне форума   Ответить с цитированием
Старый 16.10.2015, 17:42   #16
Alex11223
Модератор
Заслуженный модератор
 
Регистрация: 12.01.2011
Сообщений: 17,362
Репутация: 3353

icq: 512-765
skype: alexp.frl
По умолчанию

Close это освобождение ресурсов экземпляра Process (и оно вызывается в Dispose), оно не трогает сам процесс в системе.
Для этого Kill есть.
Alex11223 на форуме   Ответить с цитированием
Старый 16.10.2015, 17:51   #17
ninja2
Форумчанин
 
Регистрация: 13.08.2015
Сообщений: 193
Репутация: 18
По умолчанию

Да только нашел. Спс.
А как же его сделать. У меня этот процесс формирует файлы в папке пока программа работает типо дебага и когда крестик нажимаю то эта папка с файлами должна удалится. Нада процесс убить и потом удалять папку с файлами.


Наверно нужно глобально определить саму переменную
Process svnCommand = null;
Ну да скорее всего, а то папка будет удаляться, а процесс окажется не закрыт и заново эту папку создаст.

Файлы формируются для каждого экземпляра программы, 10 программ запускаем, 10 папок создается, и когда закрываем должно 10 папок удалиться. Мб. оно и будет удалятся, перед этим оно удалилось, но процесс не завершен был и заново создавал.

Последний раз редактировалось ninja2; 16.10.2015 в 17:53.
ninja2 вне форума   Ответить с цитированием
Старый 17.10.2015, 11:09   #18
ninja2
Форумчанин
 
Регистрация: 13.08.2015
Сообщений: 193
Репутация: 18
По умолчанию

А как сделать чтобы MessageBox созданый в рабочем потоке был привязан к окну программы?

Последний раз редактировалось ninja2; 17.10.2015 в 23:04.
ninja2 вне форума   Ответить с цитированием
Старый 17.10.2015, 19:07   #19
ninja2
Форумчанин
 
Регистрация: 13.08.2015
Сообщений: 193
Репутация: 18
По умолчанию

С MessageBox пока проедем, позже разберемся. Тут такая фигня оказывается программах на С# походу нужно за памятью следить или хз. у меня программа жрет память. Когда я ее запускаю то всего забирает памяти 5мб., поработает так с пол часа и уже 150. Запустил 7 программ и они за пол часа подвесили комп. Было сначала 5 - 30 мб. потом стало по 150 - 300 мб. и процессор полностью загрузило. А сразу когда запускал нормально работало. В чем проблема?

В программе ниче нету, там просто бесконечный цикл в котором пайп смотри output и если что то есть нужное то что то вводит через input и все.

Тот процесс который запускается в потоке он стабильно 20мб. сьедает не больше, проследил. С ним все нормально.

Ну от пожалуйста одну копию запустил начинало с 5мб., поработало минут 10 пока пост писал и уже 30мб. и растет дальше. Эти проги должны работать сутками, постоянно мониторить интернет, а тут такое. В чем может быть проблема? Как там неуправляемый код, не такой то он и неуправляемый

Вот уже 65 ))))

Не в С# все норм, то я напортачил чуть чуть.

Последний раз редактировалось ninja2; 17.10.2015 в 19:33.
ninja2 вне форума   Ответить с цитированием
Старый 17.10.2015, 21:18   #20
ninja2
Форумчанин
 
Регистрация: 13.08.2015
Сообщений: 193
Репутация: 18
По умолчанию

Цитата:
Сообщение от ninja2 Посмотреть сообщение
А как сделать чтобы MessageBox созданый в рабочем потоке был привязан к окну программы?
Ну так что вопрос открыть. Если я создаю поток и из него вызываю MessageBox оно не принадлежит окну основному, а просто вылетело и все. Нужно чтобы модальное окно появилось такое как если бы мы вызвали MessageBox из основного потока.

Последний раз редактировалось ninja2; 17.10.2015 в 23:04.
ninja2 вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание пользовательской документации для ПО: возможна ли автоматизация процесса? Blondy Общие вопросы по программированию, компьютерным наукам 6 13.02.2018 19:16
Linux, создание дочернего процесса, fork() и execl() Demqieff Общие вопросы C/C++ 8 20.11.2012 18:27
Создание программы вычислительного процесса с разветвлением C++ zpMirtzp Помощь студентам 1 10.05.2011 19:47
Создание процесса в Delphi Sianessa Помощь студентам 2 17.10.2010 16:16
Создание сигнатуры функций для поиска их в памяти процесса Zlyden' Общие вопросы C/C++ 10 01.03.2010 22:27


17:11.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru