|   |   | 
| 
 | 1с и многопоточность | ☑ | ||
|---|---|---|---|---|
| 0
    
        ДенисЧ 21.01.16✎ 16:11 | 
        Добрый.
 Знаю, тут уже многие делали, а у меня сейчас мало времени на изобретение велосипеда... Есть тз: (номерпакета, список данных) есть функция ОбработатьДанные(номерПакета, спискоданных) есть число Количествопотоков. Надо всю тз обработать многопоточно... Дайте кусок псевдокода для запуска всего этого с ожиданием завершения потоков... Будьте так любезны... | |||
| 1
    
        xxTANATORxx 21.01.16✎ 16:18 | 
        асинхронно, подойдет?     | |||
| 2
    
        ДенисЧ 21.01.16✎ 16:19 | 
        (1) Давай что есть...     | |||
| 3
    
        xxTANATORxx 21.01.16✎ 16:23 | 
        ТЗ пишешь в регистр сведений
 стартуешь рег задания, по числу потоков, которое берёт данные из регистра и обрабатывает всё | |||
| 4
    
        Кирпич 21.01.16✎ 16:23 | 
        а в каком релизе появились потоки?     | |||
| 5
    
        xxTANATORxx 21.01.16✎ 16:24 | 
        (4)ты меня убил     | |||
| 6
    
        Pro-tone 21.01.16✎ 16:25 | 
        (4) во сне     | |||
| 7
    
        ObjectRelation Model 21.01.16✎ 16:25 | 
        (4) в каком появились фоновые задания?     | |||
| 8
    
        Кирпич 21.01.16✎ 16:28 | 
        (7) да те давно появились. я про потоки не слышал ещё     | |||
| 9
    
        Aleksey 21.01.16✎ 16:28 | ||||
| 10
    
        H A D G E H O G s 21.01.16✎ 16:28 | 
        WaitForMultipleObjects в исполнении 1С в свое время заставило меня приуныть и отказаться от многопоточности.     | |||
| 11
    
        Aleksey 21.01.16✎ 16:28 | 
        собственно на 8-ке http://catalog.mista.ru/public/182139/     | |||
| 12
    
        ДенисЧ 21.01.16✎ 16:29 | 
        (3) к сожалению, мне нужно обязательно дождаться завершения всех потоков, поскольку на этом история не заканчивается...     | |||
| 13
    
        Попытка1С 21.01.16✎ 16:29 | 
        У Фарита есть видео на эту тему.     | |||
| 14
    
        Aleksey 21.01.16✎ 16:29 | ||||
| 15
    
        ДенисЧ 21.01.16✎ 16:29 | 
        (9) Избавь меня, пожалуйста, от этих поделок...     | |||
| 16
    
        Pro-tone 21.01.16✎ 16:29 | 
        (7) >Надо всю тз обработать многопоточно... 
 как это ты в разных заданиях (=процессах) обратишься к одному объекту в памяти уникального процесса? | |||
| 17
    
        Aleksey 21.01.16✎ 16:30 | 
        (15) Ты же хотел пример кода     | |||
| 18
    
        Карупян 21.01.16✎ 16:30 | 
        (12) есть такое в 1с     | |||
| 19
    
        Serginio1 21.01.16✎ 16:30 | 
        Я бы сказал, но ты ведь не будешь использовать.     | |||
| 20
    
        Кирпич 21.01.16✎ 16:30 | 
        (9) там чота про новые горизонты, а про многопоточность нету.     | |||
| 21
    
        Попытка1С 21.01.16✎ 16:31 | ||||
| 22
    
        Карупян 21.01.16✎ 16:31 | 
        (19) давай пример на net. как обработать тз в несколько потоков     | |||
| 23
    
        ДенисЧ 21.01.16✎ 16:32 | 
        (17) Пример кода на 1с. А за ссылку на старт - спасибо, можно сней уже играться...
 Но хотелось бы, чтобы если одно закончилось - немедленно начиналось следующее | |||
| 24
    
        Serginio1 21.01.16✎ 16:32 | 
        19 + Можно перегнать ТЗ в дататабле обсчитать и конвернуть обратно     | |||
| 25
    
        ДенисЧ 21.01.16✎ 16:32 | 
        (22) Кто сказал, что результат будет помещаться в ту же тз?     | |||
| 26
    
        Карупян 21.01.16✎ 16:33 | 
        (25) ну вот и я не говорил )))     | |||
| 27
    
        Serginio1 21.01.16✎ 16:35 | ||||
| 28
    
        Дык ё 21.01.16✎ 16:38 | ||||
| 29
    
        Garykom гуру 21.01.16✎ 17:00 | 
        (0) Функция "ОбработатьДанные(номерПакета, спискоданных)" сильно сложная?
 К 1С и базе как привязана? Возможно что угодно внешнее будет лучше? | |||
| 30
    
        ДенисЧ 21.01.16✎ 17:01 | 
        (29) Она и так с внешними данными работает.
 Мягко говоря - она пишет данные во внешнюю БД. | |||
| 31
    
        Serginio1 21.01.16✎ 17:05 | ||||
| 32
    
        Garykom гуру 21.01.16✎ 17:05 | 
        (30) данные в какую внешнюю БД и каким способом можно?     | |||
| 33
    
        Garykom гуру 21.01.16✎ 17:06 | 
        (32)+ суть из 1С выкинуть в файлы и запустить нужное число процессов/прог которые каждый свой файл во внешнюю затолкает     | |||
| 34
    
        ДенисЧ 21.01.16✎ 17:09 | 
        (32) в mysql. Прямым запросом через адо.
 Можно ещё штатным битриксовским, но это будет... <censored> | |||
| 35
    
        ДенисЧ 21.01.16✎ 17:09 | 
        (33) А зачем так извращаться? Ещё какую-то внешнюю прогу писать?     | |||
| 36
    
        ДенисЧ 21.01.16✎ 17:09 | 
        (31) Свой аналог 1с?     | |||
| 37
    
        Serginio1 21.01.16✎ 17:18 | 
        (36) Зачем аналог 1С? Ты же прямые запросы пишешь.
 Просто если хочешь нормальную многопоточность, то лучше код выносить туда, где эта многопоточность поддерживается. При этом еще и скорость увеличится за счет компиляции. Раз ты хочешь распараллелить, значит достаточно длительный процесс. | |||
| 38
    
        ДенисЧ 21.01.16✎ 17:19 | 
        (37) Я тебя сотый раз прошу - избавь меня от своих поделок. Я не буду их использовать.
 Кроме того, производительность оператора update от скомпилированности кода никак не зависит. | |||
| 39
    
        Serginio1 21.01.16✎ 17:23 | 
        (38) А это будет зависеть как ты данные будешь загонять.
 Проще это делать через CSV файлы и булки http://stackoverflow.com/questions/10253605/import-csv-to-update-only-one-column-in-table | |||
| 40
    
        Еврейчик 21.01.16✎ 17:31 | 
        (0)дауншифтинг он такой... даже крутые специалисты деградируют и начинают попрошайничать на форуме...     | |||
| 41
    
        Garykom гуру 21.01.16✎ 17:32 | ||||
| 42
    
        Garykom гуру 21.01.16✎ 17:33 | 
        (41)+ в 1С готовишь файл(ы) и просто подсовываешь mysql
 http://sqlinfo.ru/forum/viewtopic.php?id=4087 | |||
| 43
    
        ДенисЧ 21.01.16✎ 17:34 | 
        (41) А где условие where? )))     | |||
| 44
    
        Garykom гуру 21.01.16✎ 17:35 | 
        (43) зачем? выгружаешь целиком из мускула, обновляешь в 1С. загружаешь в мускул ))     | |||
| 45
    
        Garykom гуру 21.01.16✎ 17:36 | 
        (44)+ "Ключевые слова REPLACE и IGNORE управляют обработкой входных записей, которые дублируют существующие записи с теми же величинами уникальных ключей."     | |||
| 46
    
        ДенисЧ 21.01.16✎ 17:39 | 
        (45) "с теми же величинами уникальных ключей."
 Поэтому сразу же отметается | |||
| 47
    
        Serginio1 21.01.16✎ 17:39 | ||||
| 48
    
        Serginio1 21.01.16✎ 17:41 | 
        (46) Ты можешь создать темповую таблицу с теми же ключами.
 Либо отдельно делай Update, Insert из темповой таблицы | |||
| 49
    
        ДенисЧ 21.01.16✎ 17:42 | 
        (48) Разницы в таком разе не будет никакой.     | |||
| 50
    
        Garykom гуру 21.01.16✎ 17:44 | 
        (46) ну тогда только готовить sql файлы (текстовые по сути) и их скармливать в несколько потоков     | |||
| 51
    
        ДенисЧ 21.01.16✎ 17:48 | 
        (50) Я же не спрашивал, как мне грузить данные.
 Я спросил, как организовать многопоточность. | |||
| 52
    
        Fragster гуру 21.01.16✎ 17:50 | 
        кладешь во временное хранилище куски таблиц, стартуешь фоновые, передавая им адреса. результаты обработки  складываешь по тем же адресам, после завершения заданий - получаешь данные из временных и склеиваешь.     | |||
| 53
    
        Fragster гуру 21.01.16✎ 17:50 | 
        во временные хранилища - по числу потоков     | |||
| 54
    
        Попытка1С 21.01.16✎ 17:51 | 
        (51) (21) посмотрел?     | |||
| 55
    
        Fragster гуру 21.01.16✎ 17:52 | 
        если перекоса кусков по времени выполнения куска нет - то вообще норм.     | |||
| 56
    
        Serginio1 21.01.16✎ 17:52 | 
        (49) Разницы с чем, Тебе многопоточность для чего нужна,
 При апдейтах из темповой таблицы нормальный SQL сервер сам организует многопоточность | |||
| 57
    
        ДенисЧ 21.01.16✎ 17:52 | 
        (52) Это всё понятно. 
 но мне нужна хитрая вещь. Кусков у меня будет N. Потоков - K << N. В общем - нечто вроде пула потоков. Но на извращения подобные пока времени нет | |||
| 58
    
        ДенисЧ 21.01.16✎ 17:53 | 
        (54) Нет, видео пока не смотрел.     | |||
| 59
    
        Garykom гуру 21.01.16✎ 17:54 | 
        (57) блин так можно сделать N sql-файлов и одновременно их загружать средствами любыми     | |||
| 60
    
        ДенисЧ 21.01.16✎ 17:55 | 
        (56) (59) Вы оба вопрос в (0) читали? Там хоть слово про загрузку есть? Там есть слова про обработку. А загрузка - это один из частных случаев.
 Как же вы программы-то пишете, если ТЗ читать не умеете? | |||
| 61
    
        Garykom гуру 21.01.16✎ 17:56 | 
        (59) можно хоть ВК для этого наваять, хоть вызывать команды системы для запуска чего то
 (без ожидания завершения вызываем следующую) | |||
| 62
    
        Serginio1 21.01.16✎ 17:57 | 
        (60) Я читал 38     | |||
| 63
    
        Garykom гуру 21.01.16✎ 17:58 | 
        (60) так спросил же еще (29)
 если нужна обработка данные в mysql с учетом данных в 1С то предложил вынести извне т.е. данные из 1С выкидываем и натравливаем нечто внешнее на эти выкинутые данные чтобы оно взяло данные из mysql обработало с учетом данных и обратно в mysql закатало а это внешнее можно кодом на 1С кстати создать (типа скрипта если) | |||
| 64
    
        Drac0 21.01.16✎ 18:00 | 
        (12) Заводишь список значения. Один элемент на поток. По окончании работы потока вызываешь обработчик, который ставит флаг на своей элемент (выполнено) и проверяет невыполненные элементы. Если таких нет, то вызывает обработку завершения. Вроде норм.     | |||
| 65
    
        Дык ё 21.01.16✎ 18:07 | 
        (57) это все есть в (28)     | |||
| 66
    
        ДенисЧ 21.01.16✎ 19:59 | 
        (63) А если сегодня mysql, а завтра сложные расчёты?
 Я спросил ровно то, что спросил. И ни буквой больше. А тут уже начали придумывать... | |||
| 67
    
        ДенисЧ 21.01.16✎ 20:00 | 
        (64) обработку завершения чего?     | |||
| 68
    
        ДенисЧ 21.01.16✎ 20:01 | 
        (65) не покатит. оверхед большой     | |||
| 69
    
        Drac0 21.01.16✎ 20:06 | 
        (67) Твоей логики. То что должно происходить после работы потоков. Если инициализация процессов будет с клиента, то через описаниеоповещения. Если на сервере, то просто вызов соответсвующих функций серверных. Для первого случая хранить потоки на форме, во втором в регистре.     | |||
| 70
    
        Drac0 21.01.16✎ 21:14 | 
        Совсем всевдо код. Сначала пилим небольшой регистр ТекущиеПотоки под потоки с измерениями ИДЗадания, ИДПотока.
 
 | |||
| 71
    
        Serginio1 21.01.16✎ 21:15 | 
        (66) Для каждой задачи свое решение. Многопоточность можно получить разными путями. Фоновые задания очень жирные. 
 А по 0 то и так понятно Запускаем фоновые задания лучше с сервера Выполнить(<ИмяМетода>, <Параметры>, <Ключ>, <Наименование>) добавляем их в массив и ждем через ОжидатьЗавершения(<ФоновыеЗадания>, <Таймаут>) | |||
| 72
    
        H A D G E H O G s 21.01.16✎ 21:27 | 
        (71) ОжидатьЗавершения(<ФоновыеЗадания>, <Таймаут>)
 Тормозит не по детски, хз че ждет, хотя все задания выполнились. | |||
| 73
    
        Drac0 21.01.16✎ 21:28 | 
        (71) Кстати, да. Про ОжидатьЗавершения я тупанул и забыл, что там массивом можно.     | |||
| 74
    
        Drac0 21.01.16✎ 21:29 | 
        (72) Может мой вариант тогда в этом плане будет лучше? Типа ассинхронное выполнение )     | |||
| 75
    
        Serginio1 21.01.16✎ 21:36 | 
        (72) Так я ему предлагаю использовать нетовские потоки. А они быстры, веселы и легко используемы. Например
 https://msdn.microsoft.com/ru-ru/library/dd560853(v=vs.110).aspx | |||
| 76
    
        Serginio1 21.01.16✎ 21:40 | 
        (72) Кстати делегаты можно создавать стало легче
 Динамическая компиляция для использования .Net событий в 1С Давай к нам перебирайся потихоньку. | |||
| 77
    
        Garykom гуру 21.01.16✎ 21:54 | 
        (76) блин... сделай уже чтобы можно было как 1С++
 тупо из 1С (кодом на языке 1С) создается код на C#, пишется в файл, далее компилируется (вызовом из 1С чего то) и юзается... а все что там ранее наваяно выкинуть... ибо для того чтобы юзать нужно быть не 1С-ником а C#-ом! | |||
| 78
    
        Garykom гуру 21.01.16✎ 21:57 | 
        (77)+ в этом плане http://oscript.io/ гораздо ближе
 вот пример https://bitbucket.org/EvilBeaver/1script/issues/169/----------- что хотят наваять и ведь все просто и понятно!!! | |||
| 79
    
        Serginio1 21.01.16✎ 21:59 | 
        (77) Нужно быть не C# ником, а знать библиотеки .Net. 
 Толко для знания нужен опыт. С другой стороны, можно найти кучу примеров как в документации, так и на том же http://stackoverflow.com/questions/34416786/soap-service-on-java-returns-incorrect-types-in-response/34686578 куча примеров. | |||
| 80
    
        Serginio1 21.01.16✎ 22:03 | 
        (79) Ты представляешь разницу между библиотеками .Net?
 Посмотри на размер папки \Windows\Microsoft.NET\ Это гигабайт. А переписывать все англоязычные имена на русские слишком затратно. | |||
| 81
    
        Garykom гуру 21.01.16✎ 22:04 | 
        (79) угу только проще просто взять этот пример и скомпилить его (с любой передачей данных в/из 1С)
 вместо того чтобы изучать что там Вы придумали может просто выложить (не кодом а файлами C# классов с доками т.е. исходники) несколько готовых модулей для разного обмена данными с 1С? Типа: 1. Пример веб сервера с которым может соединяться http клиент 1С 2. Пример веб клиента который может подключаться к веб сервису на 1с 3. Пример ВК которую может юзать 1С 4. Пример ... | |||
| 82
    
        Serginio1 21.01.16✎ 22:05 | 
        Другое дело, что многие смогли бы и помочь. Как например содружество 1С++. Только вот никто даже вопросы не задает.
 И даже не хочет попробовать | |||
| 83
    
        Garykom гуру 21.01.16✎ 22:06 | 
        (80) никто не заставляет переписывать ничего
 http://ru.stackoverflow.com/questions/7151/Простой-компилятор-c Начиная с Windows Vista, .NET Framework (разные версии) входит в дистрибутив операционной системы. Как справедливо заметил @aghasalim, для простой компиляции не нужно устанавливать дополнительных программ. Для пробы можно набросать в блокноте текст программы (hello.cs), например: using System; namespace Sample { class Program { static void Main(string[] args) { Console.WriteLine("Hello, World!"); } } } Затем скомпилировать: > C:\Windows\Microsoft.NET\Framework\v3.5\csc.exe /nologo hello.cs И выполнить: > hello.exe Hello, World! Если нужна полноценная среда, то Visual C# Express - лучший вариант для начала. | |||
| 84
    
        Serginio1 21.01.16✎ 22:06 | 
        (81) Так вот здесь http://catalog.mista.ru/public/238584/
 куча примеров. | |||
| 85
    
        Serginio1 21.01.16✎ 22:08 | ||||
| 86
    
        Garykom гуру 21.01.16✎ 22:09 | 
        (84) бесполезная (для 80% 1С-ников) куча примеров?
 плиз вспомните те времена когда пытались освоить в 1-й раз 1С открыли конфигуратор - и мяя... что тут делать то??? | |||
| 87
    
        Garykom гуру 21.01.16✎ 22:10 | 
        (86)+ вот гляньте простейший пример (83) - 10 секунд и оно выдает Hello, World!     | |||
| 88
    
        Garykom гуру 21.01.16✎ 22:11 | 
        (87)+ а то что Вы публикуете или не могут понять/использовать
 или если могут то просто уже не нужно, сами могут такой лисапед на свой вкус наваять... | |||
| 89
    
        Serginio1 21.01.16✎ 22:13 | 
        (83) Если бы ты посмотрел 76 то там как раз и происходит динамическая компиляция. Кроме того можно компилировать сборку. Например Динамическая компиляция для использования .Net событий в 1С
 Опять же я один. Сделай, то, что тебе кажется нужным. Так или иначе я все затачиваю под себя | |||
| 90
    
        Serginio1 21.01.16✎ 22:16 | 
        (88) Чем это сложнее?
 Console=Врап.ПолучитьТип("System.Console"); Console.WriteLine("Hello, World!"); | |||
| 91
    
        Garykom гуру 21.01.16✎ 22:16 | 
        (89) проблема что Вы настойчиво грузите "школьников" "вышкой"
 вот бы Вам попробовать курсы C# для школьников вести... думаю сразу бы поняли какой должен быть уровень подачи материала )) | |||
| 92
    
        Garykom гуру 21.01.16✎ 22:17 | 
        (90) потому что в ваших статья это простое просто погребено под кучей вышки, совершенно непонятной тому кто знает только 1С     | |||
| 93
    
        Garykom гуру 21.01.16✎ 22:24 | 
        (90) сверху к этому нужен короткий (обязательно короткий) мануал как скачать нечто и скомпилить/подключить чтобы код
 Console=Врап.ПолучитьТип("System.Console"); Console.WriteLine("Hello, World!"); заработал... а то открываю "ФайлыNetObjectToIDispatch.zip" и мя.... сколько всего... что тут делать то??? | |||
| 94
    
        Drac0 21.01.16✎ 22:26 | 
        (82) Не видно большого смысла. Как весь этот функционал на .Net библиотеках будет себя вести на Линукс, а в веб-клиенте? А что делать, если потребуется бантик, который не реализован библиотеками? Искать другие? Писать свои?     | |||
| 95
    
        Serginio1 21.01.16✎ 22:37 | 
        (94) Ну и каков процент линуксов? Все прекрасно выполняется в том числе и на сервере. Можно писть свои бантики используя готовые библиотеки. Например http://catalog.mista.ru/public/434771/
 (93) Я постарался все описать в NetObjectToIDispatch.docx А что касается "школьников", то к сожалению я плохой учитель, но стараюсь делиться своим опытом. | |||
| 96
    
        Garykom гуру 21.01.16✎ 22:48 | 
        (95) я даже не понял какую dll нуна взять NetObjectToIDispatch или NetObjectToIDispatch45 ...     | |||
| 97
    
        Cyberhawk 21.01.16✎ 22:52 | 
        http://goo.gl/1mpFGj
 Про многопоточность там есть | |||
| 98
    
        Serginio1 21.01.16✎ 22:54 | 
        Для Net Framework 2 NetObjectToIDispatch 
 Для 4.5 NetObjectToIDispatch45 | |||
| 99
    
        Serginio1 21.01.16✎ 22:55 | 
        98+
 Для проведения тестов нужно распаковать архив . Татем нужно зарегистрировать Нужные DLL. Запускаем РегистрацияКомСервера.exe и выбираем NetObjetToIDispatch45.dll которая лежит в DLLNetObjetToIDispatch45 Затем запускаем толстого клиента и ТестNetObjectToIDispatch.epf | |||
| 100
    
        Drac0 21.01.16✎ 23:00 | 
        (95) "Ну и каков процент линуксов?" ч
 Что будет, когда надо подключить офис, где стоят линуксы? Переписывать систему? "Все прекрасно выполняется в том числе и на сервере." А клиентский код? Вот из-за этих моментов и не интересуются. Повышает риски, повышает стоимость владения, понижает мобильность и адаптивность. И если на семерке тупо не было выбора, тона восьмерке он уже есть. | |||
| 101
    
        Serginio1 21.01.16✎ 23:06 | 
        (100) У каждого есть свой выбор. Кстати ComObject
 Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение Для IE подходит | |||
| 102
    
        Garykom гуру 21.01.16✎ 23:07 | 
        (99) вот почему этой простой инструкции нет в начале каждого длинного мануала? ;)
 и далее вместо длинных портянок кода с непонятными терминами только код на 1С | |||
| 103
    
        Garykom гуру 21.01.16✎ 23:11 | 
        (102)+ и про запуск регистрации от Администратора то забыли?
 в результате обычный 1С-ник просто плюнет и пойдет просить на форуме "рабочее решение" или скачает/купит на ИС | |||
| 104
    
        Garykom гуру 21.01.16✎ 23:16 | 
        (103)+ вот реально мне чтобы разобраться как запустить простой пример по отправке по почте с ssl ушло 10 минут
 и это как бы в курсе и писал на C# и .Net | |||
| 105
    
        Garykom гуру 21.01.16✎ 23:30 | 
        (101) вообщем если решение (0) только под вин то вполне простое им шустрое
 NetObjectToIDispatch45 + http://xn--d1aiecikab7a.xn--p1ai/c_sharp_2/ | |||
| 106
    
        Drac0 21.01.16✎ 23:31 | 
        (101) В том и дело, что теперь есть выбор. И, как оказалось, при его наличие предпочтение отдают штатным средствам.
 А веб-клиент под мак на сафари? :) | |||
| 107
    
        Serginio1 21.01.16✎ 23:56 | 
        (104) Извини. Правда когда писал статью, думал, что все просто. Не могу я для начала влезть в шкуру новичка и понять, как лучше объяснить.
 (106) Еще раз повторю, что каждый выбирает, то, что считает нужным. Если нужна скорость разработки и возможности .Net то выбираешь то, на чем оно может работать. Иначе выбирай, то что считаешь нужным. Но при этом ешь кактус используя Native.Api со всеми её ограничениями. | |||
| 108
    
        Serginio1 21.01.16✎ 23:57 | 
        (106) Штатных средст не хватает или они зачастую ооочень медленные. Приходится использовать сторонние решения, что бы решить задачу.     | |||
| 109
    
        Garykom гуру 22.01.16✎ 00:01 | 
        (107) есть хорошая идея как сделать C# и .Net доступными для 1С-ников ))
 но идея просто смешная... до ужаса инсталлятор нужно сделать, на дотнете, который при установке проверяет какой нет есть, если нужно требует его (сча уже не так актуально но на всяк случай) далее ставит в Program Files нужные DLL регает их автоматом и еще в папку кучу простых примеров как юзать (та же почта и т.д.) | |||
| 110
    
        Garykom гуру 22.01.16✎ 00:03 | 
        (109)+ обязательно автообновление чтобы было, новые версии dll и примеров скачивались с доками     | |||
| 111
    
        Serginio1 22.01.16✎ 00:06 | 
        110 Да думал над этим. Но опять же нужны права администратора. Кстати в ТестВК есть регистрация и установка из макета     | |||
| 112
    
        Garykom гуру 22.01.16✎ 00:08 | 
        (111) пофиг, при установке инсталлятор права админа спросит штатно
 естественно уже желательна подпись | |||
| 113
    
        Garykom гуру 22.01.16✎ 00:13 | 
        (111) пример по установке из макета это в примерах хватит
 чтобы разработчик мог для своего решения простой способ внедрить т.е. не убирает отдельный инсталлятор в котором можно выбирать ставить полный пакет со всеми примерами или только нужные dll | |||
| 114
    
        Serginio1 22.01.16✎ 09:38 | 
        Кстати ты бы мог на своем опыте использования написать статью, для более быстрого освоения. Я тебе всегда рад помочь. Вот например прекрасно написанная статья "Строка в дату. Универсальное решение. Применение NetObjetToIDispatch45"
 http://catalog.mista.ru/public/434345/ Кстати можно статью и про многопоточность написать | |||
| 115
    
        Fragster гуру 22.01.16✎ 11:34 | 
        (72) вот тебе метод, который я использовал в многопоточном тесте: в фоновых устанавливаем разделяемую блокировку на константу, в "родителе" пытаемся установить исключительную. Единственное - надо увеличить время ожидания блокировки с запасом :)
 Правда у меня там наоборот - сигнал от одного сеанса ко многим, по этому я в "родительском" сеансе устанавливаю исключительную блокировку, а в "фоновых" - пытаюсь установить разделяемую. См отчет "проверка синхронизации" в https://infostart.ru/public/173394/ | |||
| 116
    
        Fragster гуру 22.01.16✎ 11:35 | 
        время реакции - десятки милисекунд всего     | |||
| 117
    
        Garykom гуру 22.01.16✎ 11:40 | 
        (114) 
 II. Как установить и начать пользоваться. 1. Установить NET Framework 4.5 https://www.microsoft.com/ru-ru/download/details.aspx?id=30653 2. Регистрация NetObjetToIDispatch45.dll 2.1 Запустить РегистрацияКомСервера.exe 2.2 Нажать кнопку "Регистрация Сервера" 2.3 Выбрать файл NetObjetToIDispatch45.dll, после чего сгенерится строка вызова, необходимая для регистрации 2.4 Запустить командную строку от имени Администратора. 2.5 Скопировать строку вызова из формы в командную строку и запустить. 2.6 Убедиться, что результатом запуска стало "Типы зарегистрированы успешно" 3. Запустить обработку Универсальная_СтрокаВДату.epf 3.1 По нажатию кнопки "Пуск" все строки должны сконвертироваться в даты. А вот если бы был инсталлятор то пункты 1-6 в один бы, экономия мануала на 80% :) | |||
| 118
    
        Serginio1 22.01.16✎ 12:03 | 
        (117) Можно проще запустить  РегистрацияКомСервера.exe от имени администратора     | |||
| 119
    
        Карупян 22.01.16✎ 12:03 | 
        (114) Рекомендую на гитхабе сделать страничку, где бы ты выкладывал примеры использования + там же была бы документация     | |||
| 120
    
        Serginio1 22.01.16✎ 12:05 | 
        (119) Да надо собраться и сделать. Эх еще бы кто помог.     | |||
| 121
    
        Карупян 22.01.16✎ 12:07 | 
        (120) Тебе помочь зарегаться на гитхабе? )))     | |||
| 122
    
        Serginio1 22.01.16✎ 12:09 | 
        (121) Нет. Просто мои примеры почему то мало кто понимает.
 Здесь как раз нужно информацию подавать понятно, что бы не отпугивать людей. А у меня это плохо получается. | |||
| 123
    
        Карупян 22.01.16✎ 12:12 | 
        (122) ты выкладывай как есть, а там уже сообщество может подключится     | |||
| 124
    
        Serginio1 22.01.16✎ 12:12 | 
        Ок     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |