Прикольно. Вроде хотел без dll собрать, с одним exe-шником.
Clarion 11-12
Модератор: Дед Пахом
					Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
	При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
- 
				kreator
 - ✯ Ветеран ✯
 - Сообщения: 5235
 - Зарегистрирован: 28 Май 2009, 15:54
 - Откуда: Москва
 - Благодарил (а): 11 раз
 - Поблагодарили: 26 раз
 
Clarion 11-12
We are hard at work… for you.   
			
						Clarion 11-12
про   вызовы  w1   w2  (  см.выше  )    Запускаю   main в  w2   через     start ( main,2400 )  -   тишина.  Вызываю  просто    main  -   запускается, но в   диспетчере   как  будто   2  раза  запущенный   exe   (  приложение.exe(2)   )  ??
			
			
									
						- 
				kreator
 - ✯ Ветеран ✯
 - Сообщения: 5235
 - Зарегистрирован: 28 Май 2009, 15:54
 - Откуда: Москва
 - Благодарил (а): 11 раз
 - Поблагодарили: 26 раз
 
Clarion 11-12
2400 наверно маловато. Нужно 25000 или 35000. Да и вообще непонятно зачем запускать через start. Start для запуска внутри фрейма.
			
			
									
						We are hard at work… for you.   
			
						- 
				kreator
 - ✯ Ветеран ✯
 - Сообщения: 5235
 - Зарегистрирован: 28 Май 2009, 15:54
 - Откуда: Москва
 - Благодарил (а): 11 раз
 - Поблагодарили: 26 раз
 
Clarion 11-12
Мне непонятно как у Вас организована программа. Вызывать фрейм надо без start'а. У меня программа может быть устроена похоже как у Вас. Сначала в source процедуре считываются настройки коннекта к серверу, коннектится к нему, вызывается диалоговое окно с приглашением пользователя и выбором модуля ("Бухгалтерия", "Торговля", ...). И вызывается конкретный фрейм, без start'а. Вот так, банально:
Код: Выделить всё
   case GLO:ProgramName
     of 'Торговля'
                           MainTrade
     of 'Бухгалтерия'
                           MainAcc
     of 'Производство'
                           MainProd
     of 'Зарплата и Кадры'
                           MainStaff
     ...                      
We are hard at work… for you.   
			
						- Игорь Столяров
 - Ветеран движения
 - Сообщения: 8269
 - Зарегистрирован: 07 Июль 2005, 10:19
 - Откуда: г. Ростов-на-ДоМу
 - Благодарил (а): 34 раза
 - Поблагодарили: 106 раз
 
Clarion 11-12
A не проще будет запустить Main (AppFrame) и в нём сделать вызов процедур для получения настроек ?
Например до OpenFiles. Без всяких Start() - здесь не нужны потоки.
			
			
									
						Например до OpenFiles. Без всяких Start() - здесь не нужны потоки.
За теми, кто отстал, не возвращаться ! 
 Кодекс
			
						- 
				kreator
 - ✯ Ветеран ✯
 - Сообщения: 5235
 - Зарегистрирован: 28 Май 2009, 15:54
 - Откуда: Москва
 - Благодарил (а): 11 раз
 - Поблагодарили: 26 раз
 
Clarion 11-12
Да, есть вот такой вариант. Во фрейме, до "Open Files":
			
			
									
						Код: Выделить всё
if PAROL(2)
  return Level:Cancel
end 
We are hard at work… for you.   
			
						Clarion 11-12
я  расписарил  выше  -   w1  вызывает    w2  вызывает   main  -   все  это   прекрасно   работает  в  с63 (abc  mssql)  уже  с  десяток  лет
в с11 эта схема не будет работать получается ?
И еще в main у меня уже объявлены в схеме таблиц несколько MSSQL таблиц. Где эта embed перед open files - чтоб я мог впихнуть пути к этим таблицам ?
			
			
									
						в с11 эта схема не будет работать получается ?
И еще в main у меня уже объявлены в схеме таблиц несколько MSSQL таблиц. Где эта embed перед open files - чтоб я мог впихнуть пути к этим таблицам ?
- Игорь Столяров
 - Ветеран движения
 - Сообщения: 8269
 - Зарегистрирован: 07 Июль 2005, 10:19
 - Откуда: г. Ростов-на-ДоМу
 - Благодарил (а): 34 раза
 - Поблагодарили: 106 раз
 
Clarion 11-12
Абсолютно точно могу Вам сказать, что C11 - это не C63.
Нет смысла жаловаться, что там работало, а тут не работает.
Тем более, что Вы пропустили развитие и изменения в С7-С10.
Ну и в любой схеме работы должен быть некий здравый смысл, наверное ...
За теми, кто отстал, не возвращаться ! 
 Кодекс
			
						Clarion 11-12
А   чего "нездравого"  в  схеме  -  w1 - connect  для   sql server -  вызывает w2  со  списком пользователей (mssql tabl ) -  затем  запускается  main  с  sql tabl  у  которого  перед  openwindow  hide-  ятся   те  или  иные   пункты  меню  в   menubar  и   buton-ы  в  toolbar-е в  зависимости   от  прав   каждого  пользователя 
?
			
			
									
						?
- Игорь Столяров
 - Ветеран движения
 - Сообщения: 8269
 - Зарегистрирован: 07 Июль 2005, 10:19
 - Откуда: г. Ростов-на-ДоМу
 - Благодарил (а): 34 раза
 - Поблагодарили: 106 раз
 
Clarion 11-12
Всё предельно круто.
Если позволите, я процитирую кусочек описания из справки:
Т.е. грубо говоря: Вы даёте команду на запуск потока и сразу завершаете работу приложения.Выполнение кода в последовательности запуска немедленно продлевается следующим за START выражением и длится, пока выражение ACCEPT не будет выполнено.
Здесь начинается игра "кто быстрей". В C63 быстрей запускался поток и блокировал завершение приложения.
Видимо в C11 поток инициализируется дольше и на момент его запуска приложение уже успело завершиться.
За теми, кто отстал, не возвращаться ! 
 Кодекс
			
						- Игорь Столяров
 - Ветеран движения
 - Сообщения: 8269
 - Зарегистрирован: 07 Июль 2005, 10:19
 - Откуда: г. Ростов-на-ДоМу
 - Благодарил (а): 34 раза
 - Поблагодарили: 106 раз
 
Clarion 11-12
Поставьте какой-нибудь Message('Сейчас запустим MAIN !') перед запуском MAIN.
И Message('Запустили MAIN !') внутри MAIN, что бы понять где именно у Вас происходит несчастье.
За теми, кто отстал, не возвращаться ! 
 Кодекс
			
						- 
				kreator
 - ✯ Ветеран ✯
 - Сообщения: 5235
 - Зарегистрирован: 28 Май 2009, 15:54
 - Откуда: Москва
 - Благодарил (а): 11 раз
 - Поблагодарили: 26 раз
 
Clarion 11-12
Если что, то это метод Init WindowManager'а. На самом деле проблема может быть в другом. Может приведёте код, который не работает? Я, например, не понимаю как всё организовано.talgat55 писал(а): 13 Сентябрь 2021, 6:18 Где эта embed перед open files - чтоб я мог впихнуть пути к этим таблицам ?
We are hard at work… for you.   
			
						Clarion 11-12
Приложение  запускается  без  проблем. Но  в  процессах  как  будто  дублируется   -  загружено  Имя.exe(3)  Окна   w1    w2   не  закрываются - не  срабатывает  команда  close(window)  -  из-за  них  похоже  exe(3)  В   открывшемся  приложении  при  закрытии  некоторых  окон -  зависает все
			
			
									
						