Помощь новичкам

Статические массивы это костыльная башня. У них внутри лежит динамический массив.

Вот только у динамических полно сахара и Linq-подобных методов, и в целом они более юзабельны.

А статичные существуют только потому, что в паскалях прошлого века они были. Но, на сколько я понимаю - в старых паскалях они хотя бы располагались на стеке (на стеке данные быстрее читаются/записываются). А в PABC.Net они полностью бесполезны.

Особенность во внутреннем представлении и реализации. К сожалению, в Справке такое не указано.

А где можно узнать что и на основе чего или что желательнее применять? Извиняюсь за кучу детских вопросов.

А смысл? Всё равно любой нормальный человек довольно быстро переходит на динамические массивы.

Ну, я чтоб определять какой инструмент где предпочтительнее - просто знаю как что устроено и по случаю вспоминаю что лучше.

А знания эти накоплены регулярным ползаниями по внутренностям реализации, с помощью декомпилятора DotPeek. К примеру, чтоб посмотреть как устроены статичные массивы - можно взять эту программу:

begin
  var a: array[1..10] of byte;
end.

Откомпилировать, удалить .pdb файл который был сгенерирован при компиляции (иначе декомпилятор вытащит из .pdb исходники, вместо того чтоб декомпилировать). И затем скормить DotPeek-у готовый .exe файл. Можно взять и перетащить прямо из папки в DotPeek любой .exe или .dll файл. Если он создан в .Net языке - его проглотит.

А дальше разберётесь. Там показывает дерево пространств имён, и в них - списки типов. И под ПКМ есть полно полезного функционала. Ну и Ctrl+клик работает так же как в паскале.

Не совсем так: если бы я не знал о возможных нюансах (уже динамические), то предпочёл бы статические массивы для конкретной размерности, а динамические - для остальных.

Это потому что вы ещё не знаете о свойствах и методах динамических массивов.

@Kotov имел в виду что когда успел попользоваться и теми и теми, при чём на полную, то есть не в старом стиле - статическими пользоваться уже и не захочется.

А свойства и методы видно так:

begin
  var a: array[,] of byte;
  a
end.

Вставьте это в пустой файл, подождите пока загрузится анализатор кода (пока не появятся точки сворачивания) и поставьте точку после a на третьей строчке. Вам выведет список всего что можно делать с динамичными массивами. А у статичных по точке вообще ничего нет, с ними можно только квадратными скобками работать.

А это потому, что Вам сколько не талдычить, что нужно больше читать, Вы все равно этого не делаете. Иначе бы знали, что статические массивы в PascalABC.NЕТ оставлены только для целей совместимости и использования в записях, которыми планируют обмениваться с типизированными файлами.

Цитата из Справки или придумали?

Вот я же говорю - не желаете читать, учиться, а хотите все готовенькое. А так не бывает.

— Во-первых, пирожных! Во-вторых… Вы, чего, и пальцы за меня загибать будете? (с)

Уважаемый, я пока новичок в Pascal Abc . Net, поэтому делаю как мне проще из того, что знаю. Пока слишком много информации и занят Справкой.

А Вы просто обильны на вставки чужих изречений или можете подсказать первоисточник или подтверждение, что я у кого-то просил “готовенькое”?

Спасибо.

Пожалуйста. Вы напрасно думаете, что сюда народ приходит для того, чтобы каждому спросившему давать детальные справки по поводу того, откуда взято то или иное суждение или утверждение. Вам информацию дали, хотите - используйте ее, не хотите - Ваше право. А то, чего Вы хотите, называется очень просто: обучение. Форум для таких вещей не предназначен.

Вон народ на этом целый научный проект сотворил :boom:

Александр, (?) прошу прощения, если задел Вас зря, указывая на название темы (“Помощь новичкам”) и попросив подтвердить Ваши утверждения. Я допускаю, что могу ошибаться и вполне возможно, что Вы или кто-то другой может оказаться умнее почти всех на форуме, но мне это не интересно. Хотя сложилось такое впечатление, будто через иронию и сарказм Вы намеренно пытаетесь продемонстрировать своё явное или мнимое превосходство или статус. Кроме того, нас учили, что цитаты забавны, но уместны в тему и в меру.

Сначала я учился в Pascal Abc .Net склеивать субтитры для проектора и на днях по крупицам собрал примеры и смог без проблем разобрать огромный файл сиквенирования даже на слабом компьютере в лаборатории. Сейчас я рассматриваю язык как прекрасную возможность переписать старые наработки и заполнить нишу узкопрофильных утилит, в частности - подзадачи в сфере биоинформатики. Проще говоря, даже в почти незначительных вопросах я не привык верить на слово и работать без проверки или сравнения с первоисточником.

Если же мои вопросы или ответы всё равно Вас задевают, постарайтесь не забывать, что я в этом деле пока что всего лишь новичок.

Пока что печатаю и читаю Справку, книги довольно специфические, а вот за отдельные примеры программ - отдельная благодарность. С уважением (без сарказма).

2 лайка

А это уже Ваша проблема. Первоисточниками в случае PascalABC.NЕТ являются Справка, презентации на официальном сайте и все по данной тематике, написанное от имени @Admin и @ibond. Остальным можете продолжать писать в стиле “Вы это сами такие умные или Вам кто-то сказал ?”. Но без меня.

Как работать с debug версией PascalABC.Net? Если я запускаю ход со входом в подпрограмму мне выдается ошибка. Даже в коде:
begin writeln end.
пишут это : Внутренняя ошибка компилятора в модуле [pabcnetc.exe] :'System.Exception: System.UnauthorizedAccessException: Отказано в доступе по пути "C:\Program Files (x86)\PascalABC.NET\Lib\PABCSystem.pcu". в System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath) в System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost) в System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access) в PascalABCCompiler.PCU.PCUWriter.CloseWriter() в C:\Users\Kotov\Documents\GitHub\pascalabcnet\Compiler\PCU\PCUWriter.cs:строка 561 в PascalABCCompiler.Compiler.ClosePCUWriters() в C:\Users\Kotov\Documents\GitHub\pascalabcnet\Compiler\Compiler.cs:строка 2344 в PascalABCCompiler.Compiler.ClosePCUReadersAndWriters() в C:\Users\Kotov\Documents\GitHub\pascalabcnet\Compiler\Compiler.cs:строка 2323 в PascalABCCompiler.Compiler.Compile() в C:\Users\Kotov\Documents\GitHub\pascalabcnet\Compiler\Compiler.cs:строка 1856'

Что сделать, чтобы был вход в подпрограмму?

Вы, случаем, не пытаетесь 2 паскаля одновременно запускать? В любом случае, вы какой то другой программой заблокировали доступ к PABCSystem.pcu… Попробуйте перезагрузить компьютер и включить отладку уже не запуская ничего лишнего.

1 лайк

Спасибо, помогло!

Исключение поймано и в debug версии. Понятен алгоритм получения исключения, если нужно, то сообщу. Подробная информация об использовании оперативной (JIT) отладки вместо данного диалогового окна содержится в конце этого сообщения.

************** Текст исключения **************
System.ArgumentOutOfRangeException: Длина не может быть меньше нуля.
Имя параметра: length
   в System.String.Substring(Int32 startIndex, Int32 length)
   в VisualPascalABC.OutputWindowForm.InputTextBox_TextChanged(Object sender, EventArgs e) в C:\Users\Kotov\Documents\GitHub\pascalabcnet\VisualPascalABCNET\DockContent\OutputWindowForm.cs:строка 144
   в System.Windows.Forms.Control.OnTextChanged(EventArgs e)
   в System.Windows.Forms.Control.set_Text(String value)
   в System.Windows.Forms.TextBoxBase.set_Text(String value)
   в System.Windows.Forms.TextBox.set_Text(String value)
   в VisualPascalABC.OutputWindowForm.VisualPascalABCPlugins.IOutputWindow.set_InputTextBoxText(String value) в C:\Users\Kotov\Documents\GitHub\pascalabcnet\VisualPascalABCNET\DockContent\OutputWindowForm.cs:строка 178
   в VisualPascalABC.WorkbenchRunService.UpdateReadRequest(Boolean changeSelected) в C:\Users\Kotov\Documents\GitHub\pascalabcnet\VisualPascalABCNET\Workbench\RunnerManagerHandlers.cs:строка 231
   в VisualPascalABC.Form1.ChangedSelectedTab() в C:\Users\Kotov\Documents\GitHub\pascalabcnet\VisualPascalABCNET\Workbench\WindowOperations.cs:строка 443
   в VisualPascalABC.CodeFileDocumentControl.CodeFileDocumentControl_Activated(Object sender, EventArgs e) в C:\Users\Kotov\Documents\GitHub\pascalabcnet\VisualPascalABCNET\DockContent\CodeFileDocument.cs:строка 336
   в System.Windows.Forms.Form.OnActivated(EventArgs e)
   в System.Windows.Forms.Form.set_Active(Boolean value)
   в System.Windows.Forms.Form.ActivateMdiChildInternal(Form form)
   в System.Windows.Forms.Form.WmMdiActivate(Message& m)
   в System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Загруженные сборки **************
mscorlib
    Версия сборки: 4.0.0.0
    Версия Win32: 4.7.2650.0 built by: NET471REL1LAST_B
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll
----------------------------------------
PascalABCNET
    Версия сборки: 3.5.0.2095
    Версия Win32: 3.5.0.2095
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/PascalABCNET.exe
----------------------------------------
System
    Версия сборки: 4.0.0.0
    Версия Win32: 4.7.2634.0 built by: NET471REL1LAST_C
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Windows.Forms
    Версия сборки: 4.0.0.0
    Версия Win32: 4.7.2634.0 built by: NET471REL1LAST_C
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
    Версия сборки: 4.0.0.0
    Версия Win32: 4.7.2634.0 built by: NET471REL1LAST_C
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
PluginsSupport
    Версия сборки: 1.0.0.0
    Версия Win32: 1.0.0.0
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/PluginsSupport.DLL
----------------------------------------
CompilerTools
    Версия сборки: 3.5.0.2095
    Версия Win32: 3.5.0.2095
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/CompilerTools.DLL
----------------------------------------
WeifenLuo.WinFormsUI.Docking
    Версия сборки: 2.2.5489.36547
    Версия Win32: 2.2.0.0
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/WeifenLuo.WinFormsUI.Docking.DLL
----------------------------------------
ICSharpCode.TextEditor
    Версия сборки: 0.0.0.0
    Версия Win32: 0.0.0.0
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/ICSharpCode.TextEditor.DLL
----------------------------------------
Compiler
    Версия сборки: 3.5.0.2095
    Версия Win32: 3.5.0.2095
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/Compiler.DLL
----------------------------------------
Errors
    Версия сборки: 3.5.0.2095
    Версия Win32: 3.5.0.2095
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/Errors.DLL
----------------------------------------
ParserTools
    Версия сборки: 3.5.0.2095
    Версия Win32: 3.5.0.2095
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/ParserTools.DLL
----------------------------------------
Localization
    Версия сборки: 1.0.0.0
    Версия Win32: 1.0.0.0
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/Localization.DLL
----------------------------------------
System.Configuration
    Версия сборки: 4.0.0.0
    Версия Win32: 4.7.2558.0 built by: NET471REL1
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Core
    Версия сборки: 4.0.0.0
    Версия Win32: 4.7.2634.0 built by: NET471REL1LAST_C
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System.Xml
    Версия сборки: 4.0.0.0
    Версия Win32: 4.7.2634.0 built by: NET471REL1LAST_C
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Windows.Forms.resources
    Версия сборки: 4.0.0.0
    Версия Win32: 4.6.1055.0 built by: NETFXREL2
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.resources/v4.0_4.0.0.0_ru_b77a5c561934e089/System.Windows.Forms.resources.dll
----------------------------------------
CodeCompletion
    Версия сборки: 1.0.0.0
    Версия Win32: 1.0.0.0
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/CodeCompletion.DLL
----------------------------------------
SyntaxTree
    Версия сборки: 3.5.0.2095
    Версия Win32: 3.5.0.2095
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/SyntaxTree.DLL
----------------------------------------
Accessibility
    Версия сборки: 4.0.0.0
    Версия Win32: 4.7.2558.0 built by: NET471REL1
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/Accessibility/v4.0_4.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
----------------------------------------
PresentationFramework
    Версия сборки: 4.0.0.0
    Версия Win32: 4.7.2634.0
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/PresentationFramework/v4.0_4.0.0.0__31bf3856ad364e35/PresentationFramework.dll
----------------------------------------
WindowsBase
    Версия сборки: 4.0.0.0
    Версия Win32: 4.7.2634.0 built by: NET471REL1LAST_C
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/WindowsBase/v4.0_4.0.0.0__31bf3856ad364e35/WindowsBase.dll
----------------------------------------
PresentationCore
    Версия сборки: 4.0.0.0
    Версия Win32: 4.7.2634.0 built by: NET471REL1LAST_C
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_64/PresentationCore/v4.0_4.0.0.0__31bf3856ad364e35/PresentationCore.dll
----------------------------------------
ICSharpCode.SharpDevelop
    Версия сборки: 4.2.1.0
    Версия Win32: 4.2.1.0
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/ICSharpCode.SharpDevelop.DLL
----------------------------------------
System.Design
    Версия сборки: 4.0.0.0
    Версия Win32: 4.7.2558.0 built by: NET471REL1
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Design/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Design.dll
----------------------------------------
ICSharpCode.Core.WinForms
    Версия сборки: 4.2.1.0
    Версия Win32: 4.2.1.0
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/ICSharpCode.Core.WinForms.DLL
----------------------------------------
ICSharpCode.Core
    Версия сборки: 4.2.1.0
    Версия Win32: 4.2.1.0
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/ICSharpCode.Core.DLL
----------------------------------------
Debugger.Core
    Версия сборки: 3.0.0.2649
    Версия Win32: 3.0.0.2649
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/Debugger.Core.DLL
----------------------------------------
ICSharpCode.SharpDevelop.Widgets
    Версия сборки: 4.2.1.8805
    Версия Win32: 4.2.1.8805
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/ICSharpCode.SharpDevelop.Widgets.DLL
----------------------------------------
ICSharpCode.SharpDevelop.Dom
    Версия сборки: 4.2.1.8805
    Версия Win32: 4.2.1.8805
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/ICSharpCode.SharpDevelop.Dom.DLL
----------------------------------------
System.Data
    Версия сборки: 4.0.0.0
    Версия Win32: 4.7.2634.0 built by: NET471REL1LAST_C
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_64/System.Data/v4.0_4.0.0.0__b77a5c561934e089/System.Data.dll
----------------------------------------
TreeConverter
    Версия сборки: 3.5.0.2095
    Версия Win32: 3.5.0.2095
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/TreeConverter.DLL
----------------------------------------
SemanticTree
    Версия сборки: 3.5.0.2095
    Версия Win32: 3.5.0.2095
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/SemanticTree.DLL
----------------------------------------
NETGenerator
    Версия сборки: 3.5.0.2095
    Версия Win32: 3.5.0.2095
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/NETGenerator.DLL
----------------------------------------
System.Numerics
    Версия сборки: 4.0.0.0
    Версия Win32: 4.7.2558.0 built by: NET471REL1
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Numerics/v4.0_4.0.0.0__b77a5c561934e089/System.Numerics.dll
----------------------------------------
PascalABCParser
    Версия сборки: 0.0.0.0
    Версия Win32: 0.0.0.0
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/PascalABCParser.DLL
----------------------------------------
SyntaxTreeConverters
    Версия сборки: 1.0.0.0
    Версия Win32: 1.0.0.0
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/SyntaxTreeConverters.DLL
----------------------------------------
OptimizerConversion
    Версия сборки: 1.0.0.0
    Версия Win32: 1.0.0.0
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/OptimizerConversion.DLL
----------------------------------------
CompilerController
    Версия сборки: 1.0.7100.35864
    Версия Win32: 1.0.0.0
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/CompilerController.DLL
----------------------------------------
mscorlib.resources
    Версия сборки: 4.0.0.0
    Версия Win32: 4.6.1055.0 built by: NETFXREL2
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/mscorlib.resources/v4.0_4.0.0.0_ru_b77a5c561934e089/mscorlib.resources.dll
----------------------------------------
HelpBuilder
    Версия сборки: 1.0.7100.35863
    Версия Win32: 1.0.7100.35863
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/HelpBuilder.DLL
----------------------------------------
System.resources
    Версия сборки: 4.0.0.0
    Версия Win32: 4.6.1055.0 built by: NETFXREL2
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.resources/v4.0_4.0.0.0_ru_b77a5c561934e089/System.resources.dll
----------------------------------------
InternalErrorReport
    Версия сборки: 1.0.7100.35864
    Версия Win32: 1.0.0.0
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/InternalErrorReport.DLL
----------------------------------------
LanguageConverter
    Версия сборки: 1.0.0.0
    Версия Win32: 1.0.0.0
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/LanguageConverter.DLL
----------------------------------------
Microsoft.Scripting
    Версия сборки: 1.1.0.20
    Версия Win32: 1.1.0.21
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/Microsoft.Scripting.DLL
----------------------------------------
PT4Provider
    Версия сборки: 1.0.0.0
    Версия Win32: 1.0.0.0
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/PT4Provider.DLL
----------------------------------------
PT4Tools
    Версия сборки: 1.0.0.0
    Версия Win32: 1.0.0.0
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/PT4Tools.DLL
----------------------------------------
SemanticTreeVisualisator
    Версия сборки: 1.0.0.0
    Версия Win32: 1.0.0.0
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/SemanticTreeVisualisator.DLL
----------------------------------------
SharpDisasm
    Версия сборки: 1.0.0.0
    Версия Win32: 1.0.0.0
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/SharpDisasm.DLL
----------------------------------------
SyntaxTreeVisualisator
    Версия сборки: 1.0.0.0
    Версия Win32: 1.0.0.0
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/SyntaxTreeVisualisator.DLL
----------------------------------------
SyntaxVisitors
    Версия сборки: 1.0.0.0
    Версия Win32: 1.0.0.0
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/SyntaxVisitors.DLL
----------------------------------------
TestPlugin
    Версия сборки: 1.0.0.0
    Версия Win32: 1.0.0.0
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/TestPlugin.DLL
----------------------------------------
VBNETParser
    Версия сборки: 1.0.7100.35864
    Версия Win32: 1.0.7100.35864
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/VBNETParser.DLL
----------------------------------------
YieldHelpers
    Версия сборки: 1.0.0.0
    Версия Win32: 1.0.0.0
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/YieldHelpers.DLL
----------------------------------------
System.Security
    Версия сборки: 4.0.0.0
    Версия Win32: 4.7.2650.0 built by: NET471REL1LAST_B
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Security/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Security.dll
----------------------------------------
Program1
    Версия сборки: 1.0.0.0
    Версия Win32: 3.5.0.2095
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/PascalABCNET.exe
----------------------------------------
Program1
    Версия сборки: 1.0.0.0
    Версия Win32: 3.5.0.2095
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/PascalABCNET.exe
----------------------------------------
Program1
    Версия сборки: 1.0.0.0
    Версия Win32: 3.5.0.2095
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/PascalABCNET.exe
----------------------------------------
Program1
    Версия сборки: 1.0.0.0
    Версия Win32: 3.5.0.2095
    CodeBase: file:///C:/Program%20Files%20(x86)/PascalABC.Net_debug/PascalABCNET.exe
----------------------------------------

************** Оперативная отладка (JIT) **************
Для подключения оперативной (JIT) отладки файл .config данного
приложения или компьютера (machine.config) должен иметь
значение jitDebugging, установленное в секции system.windows.forms.
Приложение также должно быть скомпилировано с включенной
отладкой.

Например:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

При включенной отладке JIT любое необрабатываемое исключение
пересылается отладчику JIT, зарегистрированному на данном компьютере,
вместо того чтобы обрабатываться данным диалоговым окном.

Нужно описать последовательность шагов с момента открытия Паскаля

  1. Открыл release версию PascalABC.Net и написал код:
    begin
    var a: integer;
    read(a);
    end.

  2. Нажимаем кнопку ‘шаг с входом в подпрограмму’ и продолжаем нажимать, пока в модуле __RedirectIOMode мы не получим предложение на ввод переменной, жмем до 59 строки модуля ‘шаг с входом в подпрограмму’.

  3. Вводим ‘3‘ (НА ENTER НЕ НАЖИМАЕМ) и жмем ‘шаг с входом в подпрограмму’, пока не завершится программа, жмем на кнопку ‘завершить’
    image

  4. Снова жмем ‘шаг с входом в подпрограмму’ (из системного модуля не выходим) до строки из пункта 2 – 59 и снова вводим ‘3’.

  5. Необработанное исключение получено, также можем нажать на ‘продолжить’ и ввести что – нибудь, например, пробел тоже работает, как ввод числа. image

  6. Снова выводит исключение.


PascalABCCompiler.Core v3.5.0.2110 (16.06.2019), debug version
Runtime version: 4.0.30319.42000
OS version: Microsoft Windows NT 6.1.7601 Service Pack 1
Processor count: 4
WorkingSet: 137524 kb
1 лайк

А, понятно. Ну, в режиме дебага надо запретить дебажить системные модули в части, связанной со вводом. В Студии так и сделано - у нас к сожалению всё открыто. Правильно ли я понимаю, что если нажимать Шаг без входа в подпрограмму, то всё работает?