Вверх ↑
Этот топик читают: Гость
Ответов: 138
Рейтинг: 2
#1: 2017-04-15 16:55:55 ЛС | профиль | цитата
Всё также программа по контролю время проведённого за компом для мелкого

Add(MainForm,2953706,343,63)
{
Width=252
Height=104
Visible=1
Caption="Контроль"
}
Add(ChildForm,13929895,245,63)
{
link(onEvent1,3206964:doEvent1,[(282,69)(282,146)])
}
BEGIN_SDK
Add(EditMulti,4871798,21,21)
{
EventCount=1
WorkCount=5
Width=489
Height=382
link(doWork1,15620267:doVisible,[(39,27)(39,97)])
link(doWork2,15620267:doMinimize,[(53,34)(53,83)])
link(doWork3,15620267:doRestore,[(53,41)(53,76)])
link(doWork4,15620267:doSetFocus,[(53,48)(53,104)])
}
Add(MainForm,15620267,84,63)
{
Top=105
Width=225
Height=96
Visible=1
Point(doVisible)
Point(doSetFocus)
link(onCreate,9466966:doEvent1,[(121,83)(121,129)(72,129)(72,160)])
}
Add(Edit,1063000,252,224)
{
Width=105
Text="Ведите пароль"
DataType=1
}
Add(Button,7521956,147,315)
{
Left=120
Width=75
Caption="Отмена"
link(onClick,13989998:doCompare,[])
}
Add(Label,6683204,315,133)
{
Top=25
Width=105
Height=25
}
Add(Random,11551410,182,133)
{
Min=1000
Max=9999
Quality=1
link(onRandom,10043478:doOperation,[])
}
Add(Math,10043478,238,133)
{
Op2=10
link(onResult,6683204:doText,[])
link(Op2,11265731:Random,[])
}
Add(If_else,13989998,231,315)
{
link(onTrue,4871798:onEvent1,[(387,321)(387,27)])
link(Op1,11551410:Random,[(237,240)(188,240)])
link(Op2,1063000:Text,[(244,285)(258,285)])
}
Add(Hub,9466966,84,154)
{
OutCount=3
link(onEvent1,11265731:doRandom,[(172,160)(172,76)])
link(onEvent2,11551410:doRandom,[(136,167)(136,139)])
}
Add(Label,11720567,329,49)
{
Left=120
Top=25
Width=75
Height=25
}
Add(Random,11265731,245,70)
{
Min=1
Max=10
Quality=1
link(onRandom,11720567:doText,[(303,76)(303,55)])
}
END_SDK
Add(ExitWindows,2268645,588,77)
{
Point(doPowerOff)
}
Add(Hub,3206964,287,140)
{
link(onEvent1,16749201:doStop,[(381,146)(381,97)])
link(onEvent2,2953706:doClose,[(329,153)(329,90)])
}
Add(Timer,16749201,462,84)
{
Interval=7200000
AutoStop=1
Point(doInterval)
link(onTimer,2268645:doPowerOff,[(541,90)(541,104)])
}
Add(Timer,13107566,105,280)
{
Interval=6000000
AutoStop=1
link(onTimer,9963314:doMessage,[])
}
Add(Timer,9516710,91,140)
{
Interval=6600000
AutoStop=1
link(onTimer,10672183:doEvent1,[])
}
Add(Message,9963314,203,280)
{
Message="У тебя осталось 10 минут\r\nНажми на "Да" что-бы вести пароль"
Type=2
Point(onYES)
Point(onNO)
link(onYES,10672183:doEvent2,[(247,293)(247,223)(170,223)(170,153)])
}
Add(Hub,10672183,182,140)
{
InCount=2
link(onEvent1,13929895:doWork1,[(220,146)(220,69)])
link(onEvent2,11408333:doEvent1,[(208,153)(208,115)(149,115)(149,76)])
}
Add(Hub,11408333,161,70)
{
OutCount=3
link(onEvent1,13929895:doWork2,[])
link(onEvent2,13929895:doWork3,[])
link(onEvent3,13929895:doWork4,[])
}
Add(GHotKey,3637120,420,189)
{
Alt=1
Ctrl=1
Key=27
link(onEventHotKey,12949292:doVisible,[])
}
Add(Timer,3698804,364,189)
{
AutoStop=1
link(onTimer,3637120:doStartHotKey,[])
}
Add(ChildFormEx,12949292,504,189)
{
}
BEGIN_SDK
Add(EditMultiEx,13533719,21,21)
{
WorkCount=#9:doVisible|
Width=384
Height=242
link(doVisible,3371492:doVisible,[(35,27)(35,62)])
}
Add(MainForm,3371492,49,28)
{
Left=35
Top=105
Width=293
Height=135
Visible=1
Point(doVisible)
}
Add(ChildPanel,13840257,343,105)
{
}
BEGIN_SDK
Add(EditMulti,12234980,21,21)
{
WorkCount=2
Width=433
Height=221
link(doWork1,9346311:doData,[(49,27)(49,34)])
link(doWork2,4640342:doData,[(39,48)(39,76)])
}
Add(Panel,13590048,182,42)
{
Width=285
Height=98
Visible=1
Point(doVisible)
}
Add(Hub,15417961,112,49)
{
InCount=2
link(onEvent1,13590048:doVisible,[])
}
Add(DoData,9346311,63,28)
{
Data=Integer(1)
link(onEventData,15417961:doEvent1,[(100,34)(100,55)])
}
Add(DoData,4640342,63,70)
{
Data=Integer(0)
link(onEventData,15417961:doEvent2,[(100,76)(100,62)])
}
Add(Edit,7844845,294,133)
{
Left=10
Top=5
Width=265
Text="Время ( в минутах)"
}
Add(Button,2218726,192,133)
{
Left=10
Top=55
Width=125
Caption="Отключить таймер"
}
Add(Button,8555045,193,175)
{
Left=10
Top=75
Width=125
Caption="Включить таймер"
}
Add(Button,14921077,63,133)
{
Left=150
Top=55
Width=125
Caption="Отключить контроль"
}
Add(Button,4473192,63,175)
{
Left=150
Top=75
Width=125
Caption="Включить контроль"
}
Add(Label,15541785,413,28)
{
Left=10
Top=30
Width=150
Height=20
Caption="Данное значение таймера"
AutoSize=1
}
Add(Label,3502674,294,175)
{
Left=165
Top=30
Height=20
}
END_SDK
Add(Edit,7878257,168,98)
{
Left=100
Top=30
Text="Password"
Point(doVisible)
link(onEnter,16454267:doCompare,[])
}
Add(If_else,16454267,224,105)
{
Op2=String(Аниме)
link(onTrue,7639104:doEvent1,[])
}
Add(Hub,7639104,273,105)
{
link(onEvent1,13840257:doWork1,[])
link(onEvent2,8254493:In,[(297,118)(297,132)])
}
Add(DoData,10243324,91,112)
{
Data=Integer(0)
link(onEventData,7878257:doVisible,[])
}
Add(LineBreak,10804487,35,112)
{
link(Out,10243324:doData,[])
Primary=[8254493,273,14]
}
END_SDK

Решил разбавить функционал
Но вот хотелось бы хранить кое-какие значения в "себе", то-есть без лишних файлов и записей в реестре
карма: 0
私はアニメが大好き
0
vip
#1.1контекстная реклама от партнеров
Ответов: 165
Рейтинг: 6
#2: 2017-04-15 18:27:42 ЛС | профиль | цитата
dimosikILA, кто не позволяет?


Add(Memory,11853382,637,686)
{
}
Add(GlobalVar,12041426,693,686)
{
Name="your_name"
}

карма: 4

0
Разработчик
Ответов: 26066
Рейтинг: 2120
#3: 2017-04-15 18:33:55 ЛС | профиль | цитата
Nickname писал(а):
кто не позволяет?

Это не сохраняется в файл самого себя. Чел не хочет писать параметры ни в какие *.ini файлы и реестр, он хочет сохранять параметры в самом файле *.exe. А глобальные переменные могут сохраняться только в стороннем файле по типу *.ini. Я вот только не пойму, нафиг это надо, чем реестр не устраивает, ведь доступ к нему так же можно отключить?

Редактировалось 3 раз(а), последний 2017-04-15 18:37:38
карма: 22

0
Администрация
Ответов: 15294
Рейтинг: 1518
#4: 2017-04-15 19:22:11 ЛС | профиль | цитата
Такую задачу можно решить только дописыванием данных в файл приложения (*.exe) в самый конец. Однако подобное поведение может вызвать подозрения у антивирусов, ну и при запуске не из-под администратора могут проблемы возникнуть. Если все это не беспокоит, то так и стоит сделать.
карма: 26
0
Ответов: 138
Рейтинг: 2
#5: 2017-04-16 08:50:27 ЛС | профиль | цитата
Хорошо, я понял
карма: 0
私はアニメが大好き
0
Ответов: 165
Рейтинг: 6
#6: 2017-04-16 19:44:41 ЛС | профиль | цитата
Ещё одним способом является запись в NTFS поток самого исполняемого файла. Гуглите в эту сторону, на форуме несколько лет назад тема активно обсуждалась. У способа есть очевидное ограничение на файловые системы и необходимость наличия привилегий на запись в данную директорию у запущенного приложения. Плюсом является то, что перенос исполняемого файла в другую директорию сохранит настройки вместе с ним. Та же история при переносе на другой компьютер через носитель отформатированный в NTFS.

--- Добавлено в 2017-04-16 19:52:02

Вот пример:


Add(MainForm,2953706,336,168)
{
Width=300
Height=271
Color=16777215
Caption=""
Position=1
}
Add(Button,1555037,483,175)
{
Left=5
Top=5
Caption="Load"
link(onClick,4096452:doLoad,[(537,181)(537,195)])
}
Add(Button,9858979,483,210)
{
Left=5
Top=25
Caption="Save"
link(onClick,4096452:doSave,[(537,216)(537,202)])
}
Add(Memo,4096452,560,161)
{
Left=65
Top=5
Width=210
Height=225
link(FileName,4246720:Var1,[])
}
Add(MultiElement,4246720,567,105)
{
}
BEGIN_SDK
Add(EditMulti,9474877,21,21)
{
VarCount=1
Width=209
Height=109
HOffset=70
link(Var1,15277211:GetData,[])
}
Add(Application,301099,140,28)
{
Wait=1
}
Add(EventFromData,15277211,91,77)
{
link(onEvent,3103310:doString,[])
}
Add(FormatStr,3103310,140,77)
{
DataCount=1
Mask="%1:list.txt"
link(onFString,15277211:doData,[(184,83)(184,71)(79,71)(79,83)])
link(Str1,301099:AppFileName,[])
}
END_SDK


Редактировалось 1 раз(а), последний 2017-04-16 19:52:02
карма: 4

0
6
Сообщение
...
Прикрепленные файлы
(файлы не залиты)