OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Четверг, 01 Октябрь, 2020 04:28

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
 Заголовок сообщения: Архив+Песочница=?
СообщениеДобавлено: Понедельник, 19 Июль, 2010 07:58 

Зарегистрирован: Суббота, 06 Июнь, 2009 07:52
Сообщения: 329
Для передачи модулей ВВ через Интернет по умолчанию используется Encode/Decode. Этот процесс многоступенчатый неудобный. Не каждый разработчик захочет раскрывать свой код, а простому пользователю совсем не нужно видеть листинг исходника. Кроме того, кодированный документ увеличивается в размере.

Как мне кажется, удобно было бы раскрывать документ со справкой о запускаемом модуле и коммандером запуска. Для этого можно передавать Code-файл и Docu-файл в самораспаковывающемся архиве. Но тут снова возникает проблема с размером архива.

Кроме этого, среда должна быть готова запустить модуль. И запуск должен быть безопасным. А тут появляется необходимость в «песочнице».


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Архив+Песочница=?
СообщениеДобавлено: Вторник, 20 Июль, 2010 11:21 

Зарегистрирован: Суббота, 06 Июнь, 2009 07:52
Сообщения: 329
Заглянул в раздел http://oberoncore.ru/weblinks и обнаружил
Цитата:
Component-Pascal Resources На сайте представлен ряд интересных подсистем для BlackBox: асинхронные TCP-потоки, HTTP Client&Server, средства работы с графами, клиент/сервер для удаленной компиляции по HTTP.
В таком случае ВВ можно дополнить подсистемами сжатия модулей с http://www.zinnamturm.eu/
CpcCompressors
Pac
TboxCoderList
TboxCompFile

Полагаю, что для создания «песочницы» нужно из подсистемы Win удалить все функции, предоставляющие доступ к ресурсам компьютера и не относящиеся к обмену данными по сети. Но как быть с dll-ками, которые использует ВВ при запуске?

PS. Поправил ссылку на коллекцию Цинна.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Архив+Песочница=?
СообщениеДобавлено: Вторник, 26 Октябрь, 2010 09:27 

Зарегистрирован: Суббота, 06 Июнь, 2009 07:52
Сообщения: 329
Выделил для «песочницы» список необходимых процедур и функций.
Цитата:
ADVAPI32

RegQueryValue
RegEnumKey
RegDeleteKey
RegCreateKey
RegSetValue
RegOpenKey
RegCloseKey

ole32

CoCreateInstance
CoUninitialize
CoInitialize
SysAllocString
VariantClear
SysFreeString

KERNEL32

UnhandledExceptionFilter
GetCommandLine
lstrlenW
MultiByteToWideChar
CreateEvent
GetCurrentThreadId
lstrcatA
lstrlenA
lstrcmpiA
lstrcpyA
GetModuleFileName
FreeLibrary
GetProcAddress
LoadLibrary
GetVersion
UnmapViewOfFile
CloseHandle
ReleaseMutex
SetEvent
WaitForSingleObject
CreateProcess
lstrcpynA
GetCurrentProcessId
DuplicateHandle
GetCurrentProcess
CreateMutex
MapViewOfFile
CreateFileMapping
WaitForMultipleObjects
GetModuleFileNameW
OpenProcess
GetLastError
SetUnhandledExceptionFilter
LocalFree
LocalAlloc
GetModuleHandle
ExitThread
GetStartupInfo
SetErrorMode
TerminateProcess
QueryPerformanceCounter
GetTickCount
GetSystemTimeAsFileTime
CompareString
GetShortPathName
HeapFree
HeapAlloc
GetProcessHeap
SetFileAttributes
GetFileTime
GetTempPath
GetFileSize
FormatMessage
CreateFile
lstrcmpA
MoveFile

USER32

GetShellWindow
GetClassName
SendMessage
PeekMessage
MsgWaitForMultipleObjects
DestroyWindow
TranslateMessage
DispatchMessage
LoadString
DefWindowProc
RegisterClass
CreateMenu
CreateWindow
ShowWindow
GetForegroundWindow
wsprintfA
MessageBox
Будут ли изменения и дополнения?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Архив+Песочница=?
СообщениеДобавлено: Вторник, 26 Октябрь, 2010 17:39 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 2831
А случаем такое распространение без исходных кодов не противоречит лицензионному соглашению? Или Вы купили лицензию? Просто для себя интересно, на будущее.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Архив+Песочница=?
СообщениеДобавлено: Среда, 27 Октябрь, 2010 04:42 

Зарегистрирован: Суббота, 06 Июнь, 2009 07:52
Сообщения: 329
По задумке, присутствие исходников определяющего значения не имеет. Важно то, как скомпилирован интерфейсный модуль во время работы. Если он не содержит определения потенциально опасных функций, тогда непроверенный модуль не сможет обращаться к ним. Практически, не всё так ясно, ведь dll’ка загружается полностью. В общем, надо экспериментировать.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 5 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2020, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB