توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : تغییر فایل Hosts با Hosts File Editor !!
درود
با نرم افزار زیر می توانید Website خود را به فایل Hosts اضافه کرده و ان را به این شکل بلاک کنید.
نرم افزار زیر توسط اسکریپت VB و فایل Batch نوشته شده است.
کافی است پس از اجرا، ادرس وب سایت مورد نظر را به طور کامل در تکست باکس وارد کرده و بر روی OK کلیک کنید.
http://up98.org/upload/server1/02/i/vbxtdg1nr15dz5z8kgcz.png
** پیشنهاد ، انتقادی داشتید در همین تاپیک اعلام کنید! ** :d:
مرسی
:^:
درود
گفتم که سورس این برنامه را برای علاقه مندان قرار دهم :d:
برای اینکه چیزی نیست که بخواهم مخفی کنم.:yeah:
محتوای PERM.VBS
فایل بالا مسئول انجام دو کار هست:
1) اجرای PERM.exe به شکل مخفیانه
2) اجرای VBS.exe به طور عادی
Set WshShell = CreateObject("WScript.Shell")
Set ObjVB = CreateObject("WScript.Shell")
WshShell.Run chr(34) & "PERM.exe" & Chr(34), 0
Set WshShell = Nothing
ObjVB.Run chr(34) & "VBS.exe" & Chr(34), 0
محتوای PERM.exe . این فایل در اصل یک فایل Batch هست که قرار است دسترسی کامل را به فایل Hosts بدهد.
::Seting Full Premission To Hosts File
@echo off
Cacls %WinDir%\System32\Drivers\etc\Hosts /e /c /g %username%:f
Cacls %WinDir%\System32\Drivers\etc\Hosts /e /c /g Administrator:f
این هم کد فایل اصلی یعنی VBS.exe / در این باره توضیح بیشتری نخواهم داد چون که طولانی خواهد شد.
UserInput = InputBox("Enter The Address Of Your Website","Hosts File Update VBS")
Set objShell = CreateObject("Wscript.Shell")
objShell.Popup "Created By n1maSSTO",2,"ABOUT"
Const ForReading = 1, ForWriting = 2, ForAppending = 8, ReadOnly = 1
Set fso = CreateObject("Scripting.FileSystemObject")
Set WshShell=CreateObject("WScript.Shell")
WinDir =WshShell.ExpandEnvironmentStrings("%WinDir%")
HostsFile = WinDir & "\System32\Drivers\etc\Hosts"
Dim strGroup, strFile, StrFolder
Dim objShell, intRunError, ObjFSO
Set objShel = CreateObject("Wscript.Shell")
Set objFSSO = CreateObject("Scripting.FileSystemObject")
StrGroup = "Everyone"
intRunError = objShel.Run("%COMSPEC% /c Echo Y| cacls " & HostsFile & " /e /c /g " & strGroup &":C ", 2, True)
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile(HostsFile, ForReading)
Do Until objFile.AtEndOfStream
If InStr (objFile.ReadLine, UserInput) <> 0 Then
WScript.Quit
End If
i = i + 1
Loop
objFile.Close
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.GetFile(HostsFile)
If objFile.Attributes AND ReadOnly Then
objFile.Attributes = objFile.Attributes XOR ReadOnly
End If
Set filetxt = fso.OpenTextFile(HostsFile, ForAppending, True)
filetxt.WriteLine(vbNewLine & "127.0.0.1 " & UserInput)
filetxt.Close
WScript.Quit
سوالی بود در خدمتم
:^:
borhan_3010
04-16-2012, 08:29 PM
درود
مرسی نیما جان! کار قشنگی کردی! برنامه ات هوشمند هم هست! فقط آخرش ...
بعضی آنتی ویروس ها نمیذارن فایل Hosts ویرایش بشه باید قبلش غیرفعال بشه (آویرا که اینجوره!)
شاید با nsis هم بتونم همچین کاری بکنم! دستورات اصلی اش آماده اس! مونده اضافه کردن پنجره ورود آدرس سایت ...
درود
مرسی :^:
بله انتی ویروس اویرا به این شکل هست.
دقیقا با NSIS می خواهی چکار بکنی؟! بگو تا کمک کنیم :nish:
دلیل این که برنامه رو با VBS نوشتم این بود که قابلیت ReadLine رو داشت تا ادرس رو بتونه بخونه و یک ادرس رو دوبار وارد نکنه. Batch هم چنین قابلیتی داره و ان هم با دستور For هست ولی اشکالاتی با Space دارد.
کد بالا را اگر مایل باشید در AutoIt هم می توانم بنویسم که البته تغییری در روند انجام کار ندارد ولی دو مزیت دارد:
1) دستورات خط فرمان را می توان از خود برنامه اجرا کرد و به این شکل تعداد فایل ها از 3 تا به 1 کاهش می یابد.
2) AutoIt دارای InputBox قشنگ تری هست!:d:
http://www.pic.p30ask.com/images/87513370311522167513.png
خوب حالا کی با AutoIt می خواد؟!:gah9:
borhan_3010
04-16-2012, 10:08 PM
درود
با Auto it هم بنویس چه بهتر! آره ظاهرش هم قشنگتره!
(شاید بشه برنامه ها رو با Auto it هم پرتابل کرد تقریبا تمام دستورات مورد نیاز مثل nsis رو داره باید بیشتر بررسی کنم).
دقیقا با NSIS می خواهی چکار بکنی؟!
اضافه کردن پنجره ورود آدرس سایت ... یعنی دستورات مربوط به input user چون دستورات مربوط به بررسی و اضافه کردن url به hosts قبلا آماده دارم.
درود
برنامه با AutoIt کامل شد.
البته از تمام قابلیت های AutoIt استفاده نشد چون وقتش نبود و کار بیهوده ای هم بود!
کد Alpha.exe ( نوشته شده با AutoIt )
#AutoIt3Wrapper_icon=Icon.ico
Dim $var
RunWait(@ComSpec & " /c " & "Cacls C:\Windows\System32\Drivers\etc\Hosts /e /c /g Administrator:F","",@SW_HIDE)
$var = "Cacls " & @HomeDrive & "\Windows\System32\Drivers\etc\Hosts /e /c /g " & @UserName & ":F"
RunWait(@ComSpec & " /c " & $var,"",@SW_HIDE)
$str = InputBox("Hosts File Editor AutoIt","Enter The Address of The Website You Want To block","Enter Here")
FileWrite("Apan.txt",$str)
RunWait(@ScriptDir & "\VBS.exe")
MsgBox(4096, "ABOUT", "Created By n1maSSTO", 2)
و این هم محتوای VBS.exe ( نوشته شده با اسکریپت VB )
On Error Resume Next
Const ForReading = 1, ForWriting = 2, ForAppending = 8, ReadOnly = 1
Set objFO = CreateObject("Scripting.FileSystemObject")
set objTextFile = objFO.OpenTextFile("APAN.txt", ForReading)
UserInput = objTextFile.Readline
Set fso = CreateObject("Scripting.FileSystemObject")
Set WshShell=CreateObject("WScript.Shell")
WinDir =WshShell.ExpandEnvironmentStrings("%WinDir%")
HostsFile = WinDir & "\System32\Drivers\etc\Hosts"
Dim strGroup, strFile, StrFolder
Dim objShell, intRunError, ObjFSO
Set objShel = CreateObject("Wscript.Shell")
Set objFSSO = CreateObject("Scripting.FileSystemObject")
StrGroup = "Everyone"
intRunError = objShel.Run("%COMSPEC% /c Echo Y| cacls " & HostsFile & " /e /c /g " & strGroup &":C ", 2, True)
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile(HostsFile, ForReading)
Do Until objFile.AtEndOfStream
If InStr (objFile.ReadLine, UserInput) <> 0 Then
WScript.Quit
End If
i = i + 1
Loop
objFile.Close
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.GetFile(HostsFile)
If objFile.Attributes AND ReadOnly Then
objFile.Attributes = objFile.Attributes XOR ReadOnly
End If
Set filetxt = fso.OpenTextFile(HostsFile, ForAppending, True)
filetxt.WriteLine(vbNewLine & "127.0.0.1 " & UserInput)
filetxt.Close
WScript.Quit
این هم نمای کلی :
http://www.pic.p30ask.com/images/51995272369378534269.png
روز خوش
:^:
borhan_3010
04-18-2012, 07:48 PM
درود
دستورات vb شباهات زیادی با اسکریپ نویسی AutoIt داره!؟
البته برای من جالب تر بود که تمام دستورات توی AutoIt نوشته بشه که توی پروژه های پرتابل سازی بعدی ام هم قابل استفاده باشه! شاید بعدا خودم درست اش کنم ...
بازم مرسی :^:
درود
بین هر زبانی، اسکریپتی قطعا شباهت هایی وجود داره و در بیشتر جاها هم از الگو های مشترک تبعیت می کنند.
اما در این مورد، نه من شباهتی ندیدم!
ولی میشه Autoit انجامش داد ولی با اسکریپت بالا تفاوت دارد.
میگم خسته نشدی انقدر پرتابل کردی؟!:gah9:
من شخصا فقط برنامه هایی رو پرتابل می کنم که در مواقع کمی ازشون استفاده می کنم! برای اینکه نصب ان ها در ویندوز، جز سنگین تر کردن ویندوز، چیز دیگری به همراه ندارند. برای همین تعداد برنامه های پرتابل من بیشتر از 20 تا نمی شود.
باز هم سلیقه ای هست و ادب می گه که باید به سلیقه دیگران احترام بگذاری!
روز خوش
:^:
borhan_3010
04-18-2012, 08:13 PM
درود
فقط برنامه های به درد بخور رو پرتابل می کنم نه هر برنامه ای!!
برنامه هایی که همیشه استفاده نمی کنم ولی مفید هستند مثل photoinstrument و اساسا اگه برنامه ای رو که بتونم پرتابل کنم از نسخه پرتابل اش استفاده می کنم تا نصبی!
vBulletin v4.2.5, Copyright ©2000-2025, Jelsoft Enterprises Ltd.