|
Программируем по-русски
|
Основная задача Глагола — дать человеку возможность воплощать свои мысли на языке, близком к его родному языку. Издатель Глагола
|
(*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*) ОТДЕЛ Biblioteka+; (*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*) (* НАЗНАЧЕНИЕ: динамически подключаемая библиотека для "ИспБиблиотеки" *) (*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*) ИСПОЛЬЗУЕТ ОБХОД, Асм ИЗ "...\Отделы\Иное\", Вывод ИЗ "...\Отделы\Обмен\"; ПЕР (* приёмники загрузки ДПБ *) hInstance,reason,param:ЦЕЛ; ВИД Набор = НАБОР ц:ЦЕЛ; в:ВЕЩ; КОН; ЗАДАЧА GetModuleFileName( hModule:ЦЕЛ; lpFilename+:ЦЕПЬ; nSize:ЦЕЛ ):ЦЕЛ; ВЫЗОВ "GetModuleFileNameW" ИЗ "kernel32.dll"; (*────────────────────────────────────────────────────────────────────────────*) ЗАДАЧА* Zadacha1-(адрЦепи:ЦЕЛ); ПЕР имя:ЦЕПЬ[300]; знак:ЗНАК; поз:ЦЕЛ; ответ:ЦЕЛ; УКАЗ ответ:=GetModuleFileName(hInstance,имя,РАЗМЕР(имя)); Вывод.Цепь("Работает 'Zadacha1' из библиотеки '"); Вывод.Цепь(имя); Вывод.Цепь("'.^"); (* переписываем входную цепочку *) поз:=0; ПОВТОРЯТЬ ОБХОД.ИзПамяти(адрЦепи,знак); имя[поз]:=знак; УВЕЛИЧИТЬ(адрЦепи,2); УВЕЛИЧИТЬ(поз) ДО знак = 0X; (* вывод значения *) Вывод.Цепь("Значение <цепь>: '"); Вывод.Цепь(имя); Вывод.Цепь("'.^^"); КОН Zadacha1; (*────────────────────────────────────────────────────────────────────────────*) ЗАДАЧА* Zadacha2-(набор+:Набор); УКАЗ Вывод.Цепь("Работает 'Zadacha2' из той же библиотеки.^"); Вывод.ЧВещ("Значение <набор>: (%f;%f).^^",набор.ц,набор.в,0,0); (* изменим значение *) набор.ц:=3; набор.в:=4; КОН Zadacha2; (*────────────────────────────────────────────────────────────────────────────*) УКАЗ (* считываем приёмники ДПБ *) Асм.ПриёмникиДПБ(hInstance,reason,param) КОН Biblioteka. ▲ Вопросы, замечания и предложения высылайте на atimopheyev@yahoo.com или Издателю Глагола:
|
|