Пример запуска кода C# в пакете Windows(delphi).
https://forum.hiasm.com/getfile/39534
Код взят отсюда - https://github.com/tarikguney/ascii-table-creator и без каких-либо изменений вставлен в схему.
Проверен на Windows10/64
Редактировалось 1 раз(а), последний 2022-08-27 18:03:30
Этот топик читают: Гость
Ответов: 793
Рейтинг: 168
|
|||
карма: 16 |
| ||
файлы: 1 | ascii-table-creator.zip [3.3KB] [365] | ||
Голосовали: | Fangir |
Ответов: 315
Рейтинг: 26
|
|||
Gunta писал(а): без каких-либо измененийОчень интересно. Можно сделать компонент для вставки кода C# ? Редактировалось 1 раз(а), последний 2022-08-28 08:55:21 |
|||
карма: 2 |
|
Ответов: 2059
Рейтинг: 132
|
|||
envoy_sky писал(а): Можно сделать компонент для вставки кода C# ?Тогда уж из этого https://bellard.org/tcc/ Скорость компиляции и выполнения кода невероятная! А вот это понастоящему крутая вещь! https://terralang.org/ Только надо читать https://habr.com/ru/post/336406/ вдумчиво и с пониманием, а то все фишки можно пропустить и не понять. (можно и без LUA а только с hiasm(пробовал, работает!), и вставить С\С++ или любой другой язык - в любой другой язык, в том числе и hiasm, кроссплатформенность...) Редактировалось 5 раз(а), последний 2022-08-28 11:54:56 |
|||
карма: 6 |
|
Ответов: 5227
Рейтинг: 587
|
|||
Сделать из NET COM объекты и в последствии их использовать не рекомендуется. Это просто очередная брешь в системе безопастности.
В KOL достаточно средств для продвижения проекта. |
|||
карма: 4 |
|
Ответов: 793
Рейтинг: 168
|
|||
andrestudio писал(а): Сделать из NET COM объекты и в последствии их использовать не рекомендуется.Из Wikipedia .NET и будущее COM
В 2002 году была официально выпущена платформа Microsoft .NET, которая на сегодняшний день объявлена Microsoft рекомендуемой основой для создания приложений и компонентов под Windows. По этой причине в .NET включены и средства, позволяющие обращаться к компонентам COM из приложений .NET, и наоборот. По словам представителей Майкрософт, COM (точнее, COM+) и .NET являются отлично взаимодополняющими технологиями. andrestudio писал(а): Это просто очередная брешь в системе безопастности."Верить в наше время нельзя никому. Порой даже самому себе. Мне — можно." ©(Мюллер) "Семнадцать мгновений весны". Вот "обычный" прогноз погоды - https://forum.hiasm.com/getfile/39535 |
|||
карма: 16 |
| ||
файлы: 1 | test_weather.rar [43.7KB] [342] |
Ответов: 5227
Рейтинг: 587
|
|||
Gunta, дело в том что после директивы assemblies все объектные файлы NET преобразуются в COM объекты (собственно зарегистрированные в системе dll с хуевой тучей ссылок на каждый класс раздувая реестр) и после этих манипуляций (даже просто при компиляции твоей схемы с запуском) эти COM объекты будут всегда доступны для браузера в виде VBS и JS скриптов. Так вот кто работает в IT и внимательно читает должностную инструкцию а не википедию таких ужей с ежами не допускают.
--- Добавлено в 2022-08-30 17:12:24 andrestudio писал(а): В KOL достаточно средств для продвижения проекта.Мне и добавить то нечего. Редактировалось 2 раз(а), последний 2022-08-30 17:21:33 |
|||
карма: 4 |
|
Ответов: 793
Рейтинг: 168
|
|||
andrestudio, Powershell -язык программирования используется во всех ОС Microsoft начиная с Windows XP SP3.
Начиная с Windows 7 поставляется вместе с системой. Версии с 1 по 5.1 это .NET Framework. В проектах Hiasm powershell запускается в отдельном потоке и взаимодействие с программой происходит через стандартные устройства in-out, консоль, буфер обмена и др. Не нравится Wikipedia, вот документация самой microsoft - https://docs.microsoft.com/ru-ru/powershell/scripting/samples/creating-.net-and-com-objects--new-object-?view=powershell-7.2 https://docs.microsoft.com/ru-ru/dotnet/framework/interop/exposing-com-components https://docs.microsoft.com/ru-ru/powershell/scripting/samples/sample-scripts-for-administration?view=powershell-7.2 Я делаю примеры для тех, у кого не сложилось с HiAsm.NET (как у меня) но хотел бы встраивать элементы .Net в свои проекты. Тем более возможностей у PowerShell значительно больше чем у VBS и JS . Редактировалось 1 раз(а), последний 2022-08-31 07:12:15 |
|||
карма: 16 |
| ||
Голосовали: | Dad2016 |
Ответов: 793
Рейтинг: 168
|
|||
Пример передачи данных из PowerShell по протоколу UDP.
|
|||
карма: 16 |
|
Ответов: 5227
Рейтинг: 587
|
|||
Gunta, Ради интереса, твои схемы работают под учёткой пользователя
Если нет тогда смысл какой |
|||
карма: 4 |
|
Ответов: 793
Рейтинг: 168
|
|||
andrestudio писал(а): Ради интереса, твои схемы работают под учёткой пользователя Под той учётной записью под которой запускалась программа. Это легко проверить
Редактировалось 1 раз(а), последний 2022-08-31 19:14:55 |
|||
карма: 16 |
|
Ответов: 5227
Рейтинг: 587
|
|||
Gunta, это не ответ на вопрос а отмазка (нет у меня этого POWERSHELL(а) и почему я тебе уже говорил)
Год назад работал в одной гос. структуре пока не сократили и занимался защитой персональных данных. (крипто-сервис, электронные-подписи и всякой другой хренью) т.е представляя таким образом дырки в системе ты можешь утверждать что это во благо пользователей Но это же бесстыже как минимум --- Добавлено в 2022-09-01 20:32:45 Вот что бы не было проколов у кого кто занимается подобной деятельностью для примера история того как один "талантливый" программист пошёл таким же коротким путём. В следствии чего его чудо классы из C# стали доступны в 1С-предприятие. Ну и что, думаете ему премию выписали Да нет, был уволен с чёрным билетом. Редактировалось 1 раз(а), последний 2022-09-01 20:32:45 |
|||
карма: 4 |
|
Ответов: 793
Рейтинг: 168
|
|||
andrestudio писал(а): нет у меня этого POWERSHELL(а)"Я Пастернака не читал, но осуждаю" PowerShell — это кроссплатформенное решение для автоматизации задач, которое включает оболочку командной строки, скриптовый язык и платформу управления конфигурацией. PowerShell поддерживается в Windows, Linux и macOS В первую очередь эта среда для решения задач, стоящих перед системными администраторами, а также разработчиками программного обеспечения, предоставляя им средства для быстрой реализации интерфейсов управления к создаваемым приложениям. Для достижения этих целей были решены следующие задачи:
• Обеспечение прямого доступа из командной строки к объектам COM, WMI и .NET. В новой оболочке присутствуют команды, позволяющие в интерактивном режиме работать с COM-объектами, а также с экземплярами классов, определенных в информационных схемах WMI и .NET. • Организация работы с произвольными источниками данных в командной строке по принципу файловой системы. Например, навигация по системному реестру или хранилищу цифровых сертификатов выполняется из командной строки с помощью аналога команды CD интерпретатора Cmd.exe. • Разработка интуитивно понятной унифицированной структуры встроенных команд, основанной на их функциональном назначении. В новой оболочке имена всех внутренних команд (в PowerShell они называются командлетами) соответствуют шаблону "глагол-существительное", например, Get-Process (получить информацию о процессе), Stop-Service (остановить службу), Clear-Host (очистить экран консоли) и т.д. Для одинаковых параметров внутренних команд используются стандартные имена, структура параметров во всех командах идентична, все команды обрабатываются одним синтаксическим анализатором. В результате облегчается запоминание и изучение команд. • Обеспечение возможности расширения встроенного набора команд. Внутренние команды PowerShell могут дополняться командами, создаваемыми пользователем. При этом они полностью интегрируются в оболочку, информация о них может быть получена из стандартной справочной системы PowerShell. • Организация поддержки знакомых команд из других оболочек. В PowerShell на уровне псевдонимов собственных внутренних команд поддерживаются наиболее часто используемые стандартные команды из оболочки Cmd.exe и Unix-оболочек. Например, если пользователь, привыкший работать с Unix-оболочкой, выполнит ls, то он получит ожидаемый результат: список файлов в текущем каталоге (то же самое относится к команде dir). • Разработка полноценной встроенной справочной системы для внутренних команд. Для большинства внутренних команд в справочной системе дано подробное описание и примеры использования. В любом случае встроенная справка по любой внутренней команде будет содержать краткое описание всех ее параметров. • Реализация автоматического завершения при вводе с клавиатуры имен команд, их параметров, а также имен файлов и папок. Данная возможность значительно упрощает и ускоряет ввод команд с клавиатуры. Главной особенностью среды PowerShell, отличающей ее от всех других оболочек командной строки, является то, что единицей обработки и передачи информации здесь является объект, а не строка текста. Отличие PowerShell от других оболочек – ориентация на объекты При разработке любого языка программирования одним из основных является вопрос о том, какие типы данных и каким образом будут в нем представлены. При создании PowerShell разработчики решили не изобретать ничего нового и воспользоваться унифицированной объектной моделью .NET. Данный выбор был сделан по нескольким причинам. Во-первых, платформа .NET повсеместно используется при разработке программного обеспечения для Windows и представляет, в частности, общую информационную схему, с помощью которой разные компоненты операционной системы могут обмениваться данными друг с другом. Во-вторых, объектная модель .NET является самодокументируемой: каждый объект .NET содержит информацию о своей структуре. При интерактивной работе это очень полезно, так как появляется возможность непосредственно из командной строки выполнить запрос к определенному объекту и увидеть описание его свойств и методов, то есть понять, какие именно манипуляции можно проделать с данным объектом, не изучая дополнительной документации с его описанием. В-третьих, работая в оболочке с объектами, можно с помощью их свойств и методов легко получать нужные данные, не занимаясь разбором и анализом символьной информации, как это происходит во всех традиционных тексто-ориентированных оболочках командной строки. Типы команд PowerShell В оболочке PowerShell поддерживаются команды четырех типов: командлеты, функции, сценарии и внешние исполняемые файлы. Первый тип – так называемые командлеты (cmdlet). Этот термин используется пока только внутри PowerShell. Командлет представляет собой класс .NET, порожденный от базового класса Cmdlet ; разрабатываются командлеты с помощью пакета PowerShell Software Developers Kit (SDK). Единый базовый класс Cmdlet гарантирует совместимый синтаксис всех командлетов, а также автоматизирует анализ параметров командной строки и описание синтаксиса командлетов для встроенной справки. Данный тип команд компилируется в динамическую библиотеку (DLL) и подгружается к процессу PowerShell во время запуска оболочки (то есть сами по себе командлеты не могут быть запущены как приложения, но в них содержатся исполняемые объекты). Так как компилированный код подгружается к процессу оболочки, данный тип команд выполняется наиболее эффективно. Командлеты – это аналог внутренних команд традиционных оболочек. Следующий тип команд – функции. Функция – это блок кода на языке PowerShell, имеющий название и находящийся в памяти до завершения текущего сеанса командной оболочки. Функции, как и командлеты, поддерживают именованные параметры. Анализ синтаксиса функции производится один раз при ее объявлении. Сценарий – это блок кода на языке PowerShell, хранящийся во внешнем файле с расширением ps1. Анализ синтаксиса сценария производится при каждом его запуске. Последний тип команд – внешние исполняемые файлы, которые выполняются обычным образом операционной системой. При разработке PowerShell особое внимание было уделено безопасности. Одной из мер безопасности является наличие политики выполнения (Execution Policy), которая определяет, могут ли скрипты PowerShell выполняться в системе, и если могут, то какие именно. |
|||
карма: 16 |
|
Ответов: 793
Рейтинг: 168
|
|||
Пример передачи данных в PowerShell через MemoryMappedFile (компонент SharedStream).
Редактировалось 1 раз(а), последний 2022-10-25 11:35:03 |
|||
карма: 16 |
|
Ответов: 793
Рейтинг: 168
|
|||
Сумма, дата и деньги прописью.
Ещё один пример запуска кода C# в пакете Windows(delphi) - https://forum.hiasm.com/getfile/39602 Код взят отсюда - https://github.com/maestrow/amount-in-words и без каких-либо изменений вставлен в StrList. Проверено на - Windows 10 (x64) - Hiasm v4.05 build 186 (delphi) |
|||
карма: 16 |
| ||
файлы: 1 | amount-in-words.zip [4.3KB] [243] |
Ответов: 8926
Рейтинг: 823
|
|||
Gunta, 890.352 --> "... триста пятьдесят два сотых"
В рублях всё нормально |
|||
карма: 19 |
|