윈 도 우 Move over there 우메뉴등록_제거 + 그룹정책 백복
2020.03.25 23:57
지후아빠님 자료 https://windowsforum.kr/lecture/13049139 에 이어서 ...지후아빠님 강좌에서 많이 베꼈(?)습니다.
수정한 것으로 사용해보세요.
https://windowsforum.kr/lecture/13133811
1. 우메뉴등록파일 실행
2. 폴더 선택창에서 대상폴더를 선택하면
C:\Windows\System32\MoveOverthere.vbs의 백업 대상폴더가 수정됩니다.
3. 테스트
백업을 원하는 파일 마우스 우클릭(또는 여러파일 폴더 드래그 앤 우클릭)
; OverwriteExisting + move(copy가 아님)
copy로 바꾸려면 f.DeleteFolder Arg,OverwriteExisting를 지우면 됩니다
4. 백업대상 폴더 변경하려면
바탕화면 아무 곳 마우스우클릭, 재설정...
5. 제거는 제거파일....실행
MoveOverthere.vbs (C:\Windows\System32\MoveOverthere.vbs)
Const MyDestinationFolder = "D:\#_자료백업#\"
Const OverwriteExisting = True
Dim gFile, gFolder, f, a, s, o
Dim Arg
Set o = CreateObject("WScript.Shell")
Set f = CreateObject("Scripting.FileSystemObject")
If WScript.Arguments.Count = 0 Then
w = WScript.ScriptFullName
Set a = f.OpenTextFile(w, 1)
a.SkipLine : s = chr(13) & Chr(10) & a.ReadAll : a.Close
strPath = SelectFolder(strPath)
If strPath = vbNull Then
o.popup " 취소 중 ... 3초 후 닫혀요 .... ", 3, "취소 중"
Else
strPath = chr(34) & strPath & "\" & chr(34)
Set a = f.CreateTextFile(w, True)
a.Write "Const MyDestinationFolder = " & strPath & s : a.Close
End If
End If
If WScript.Arguments.Count > 0 Then
For Each Arg in Wscript.Arguments
Arg = Trim(Arg)
If InStr(Arg,".") Then
Set gFile = f.GetFile(Arg)
gFile.Copy MyDestinationFolder & gFile.Name,OverwriteExisting
f.DeleteFile Arg,OverwriteExisting
Else
Set gFolder = f.GetFolder(Arg)
gFolder.Copy MyDestinationFolder, OverwriteExisting
f.DeleteFolder Arg,OverwriteExisting
End If
Next
End If
Const MY_COMPUTER = &H11&
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Function SelectFolder(strPath)
Dim objFolder, objShell
On Error Resume Next
SelectFolder = vbNull
Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.Namespace(MY_COMPUTER)
Set objFolderItem = objFolder.Self
strPath = objFolderItem.Path
Set objFolder = objShell.BrowseForFolder(0, "초기설정 >>> 파일을 이동할 대상 폴더 선택", 0, strPath)
If IsObject(objfolder) Then SelectFolder = objFolder.Self.Path
Set objFolder = Nothing
Set objshell = Nothing
On Error Goto 0
End Function
MoveOverthere우메뉴등록.vbs
On Error Resume Next
If WScript.Arguments.length = 0 Then
Set objShell = CreateObject("Shell.Application")
objShell.ShellExecute "wscript.exe", Chr(34) & WScript.ScriptFullName & Chr(34) & " uac", "", "runas", 1
Else '-------------------------------------------------------------
Set WshShell = CreateObject("WScript.Shell")
Set FSO = CreateObject("Scripting.FileSystemObject")
curDir = FSO.GetParentFolderName(WScript.ScriptFullName)
strREfile = curDir & "\RExplore.exe"
strSystem64 = WshShell.ExpandEnvironmentStrings("%SystemRoot%") & "\System32\"
OSArchCheck = WshShell.RegRead("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\PROCESSOR_ARCHITECTURE")
If OSArchCheck = "x86" Then
strSystem86 = strSystem64
Else
strSystem86 = WshShell.ExpandEnvironmentStrings("%SystemRoot%") & "\SysWOW64\"
End If
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
strDir = strSystem64 & "MoveOverthere.vbs"
sRegFile = curDir & "\MoveOverthere.reg"
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
FSO.CopyFile curDir & "\MoveOverthere.vbs", strSystem64, true
WshShell.Run "regedit.exe /s " & Chr(34) & sRegFile & Chr(34), 0, True
WshShell.Run Chr(34) & strREfile & Chr(34), 0, true
WshShell.popup " 5초 만 기다려요 .... ", 5, "작업 중"
WshShell.Run Chr(34) & strDir & Chr(34), 1, true
'현 폴더 자폭
'strCurDir = WshShell.CurrentDirectory
'WshShell.CurrentDirectory = ".."
'FSO.DeleteFolder(strCurDir)
End If
그룹정책 백업복원 GPO.7z
https://www.autoitscript.com/forum/files/file/461-gpo-tool/
GPO폴더명 유지해야 백업됩니다.
사용 후, 4개 파일 삭제 필요...
댓글 [10]
-
레마클로 2020.03.26 00:05 -
하늘개구 2020.03.26 02:13
항상 많은 배움 주심에 고개숙여 감사드립니다!~ 꾸-벅
건강 조심하십시요!~
-
지후빠 2020.03.26 09:25
이제 막 출근해서... 시간 나면 살펴 봐야 겠습니다.^^ 또 뭘 배울지...
번쩍 아이디어가 떠오르는 것 같기도 하구요.
-
레마클로 2020.03.26 09:54 어떻게 폴더 재설정을 하게 할지 많이 고민 했었습니다. 바탕우클릭으로 결정했지만 context menu가 지저분해지더군요.
휴지통의 context menu에도 보이고.
주말까지 딸 컴을 납품(?)해야 해서 .. 거기 넣어주려구요.
수정 부탁드립니다. 아이디어도 추가 해 주시고....^^
-
지후빠 2020.03.26 12:45
저는 Total Commander 사용하고 탐색기는 사용하지 않아서 context menu에 추가하는 어떤 것은 하지를 않았습니다.
간혹 필요해서 sendto에 넣어 사용하는 것을 만들기는 하지만 사실 TC 매개변수 %P%S 와 sendto에서 받는 argument가
같아서 TC용인지 sendto용인지 구별할 필요가 없습니다. 우클릭 메뉴는 항상 기본으로만 사용하고 있습니다.^^;;;
스크립트 보다 보면 아이디어도 떠오르고 해서 수정해보지만 항상 선을 넘는 것 아닌가 싶어서 조심스럽습니다.
학습 목적으로 했다지만 혹 상대방이 언짢아 하면 곤란해서요. 코드를 정리하다 보면 핵심을 건지는 경우가 많은 것 같습니다.
제가 올린 스크립트는 어떤 형식으로든 활용하셔도 좋습니다. 예제에서 배우는 것이 가장 빠르다는 경험을 했습니다. :-)
제가 수정할 때 모든 것은 제 입맛에 맞게 고치기 때문에 그점은 이해 부탁드립니다. 이름들 까지도... ㅎ
살펴보고 도움이 될 것 같으면 올려보겠습니다. 감사합니다.^_^
-
레마클로 2020.03.26 13:02 선 넘으셔도 되고, 다 됩니다.^^
저의 경우는 실제 사용할 목적이 아니면 건드리지도 않습니다.
더 세련되고 훌륭하면 제꺼 버립니다.
배울자세 되어 있으니 걱정마시고...
-
지후빠 2020.03.26 16:10
BrowseForFolder 에서 ShellSpecialFolderConstants 중 17(&h11) 작동하지 않습니다. 최신 OS에서...
VbsEdit에 있는 Sample 중 List All Special Folders in Windows를 CScript로 시작해보십시오. :-)
-
레마클로 2020.03.26 16:20 17 넣어 봤었습니다. 안된 원인이 있었군요.ㅠㅠ
-
cungice 2020.03.26 20:15
수고 많으셨습니다. 감사합니다.
-
지후빠 2020.03.28 09:23
주말에 시간이 안될 것 같아 다음주에 도전해 보겠습니다.^^
좋은 타이밍을 놓치는 것 같습니다.ㅠㅠ
1. 레마클로님 설정 부분을 확장시킨 개념으로 수정하다 멈춘 상태입니다. 넘 일을 크게 시작한듯...
2. Over There의 복사 폴더 루트를 지정해두면 VTool중 아래 List 부분 활용하여 서브 폴더를 읽어들여서
선택된 서브폴더로 이동하게 해보려고 합니다. (같은 드라이브에서는 복사 보다는 이동이 속도면에서 유리할 것 같습니다.)
3. 얼마전 알게된 DynaLib 이용하여 Scroll Lock이 켜져 있으면 설정을 진행하게 하는 방법도 생각해봤는데
그러면 외부 것들이 너무 덕지덕지 붙을 것 같아서 좀 꺼려집니다. arg 없이 실행하면 설정모드로 들어가는 아이디어가 더 좋긴 합니다.^^
번호 | 제목 | 글쓴이 | 조회 | 추천 | 등록일 |
---|---|---|---|---|---|
[공지] | 강좌 작성간 참고해주세요 | gooddew | - | - | - |
4150 | 소프트웨어| Primo Ramdisk 사용하기 [14] | 하늘보기 | 17741 | 23 | 05-27 |
4149 | 윈 도 우| Windows 8 정품인증 안하고 개인설정 하는 팁 [7] | 핑크맛우유 | 17725 | 4 | 09-20 |
4148 | 하드웨어| USB부팅도 안되는 구형보드에서 plop를 통해 윈도설치. [3] | 오펜하이머 | 17718 | 1 | 03-16 |
4147 | 서버 / IT| datafilehost.com 을 이용한 대용량 이미지 공유 [6] | gooddew | 17710 | 4 | 01-12 |
4146 | 윈 도 우| 윈도우 7 32비트 64비트 메모리 [9] | DOS | 17697 | 2 | 12-29 |
4145 | 윈 도 우| 방화벽으로 프로그램 아웃바운드 차단하기 [5] | wopd | 17650 | 7 | 12-01 |
4144 | 윈 도 우| Win8Mpe M 에서 Y드라이브의 용도는.... [6] | tara | 17641 | 4 | 02-27 |
4143 | 소프트웨어| 윈도우7 USER-PE 무선 랜카드 드라이버 설치방법 [2] | 세리아 | 17631 | 3 | 06-22 |
4142 | 소프트웨어| 윈7에서 프로그램 인터넷 차단 방법 [9] | 구들목 | 17601 | 3 | 05-02 |
4141 | [팁]사용자 권한 얻는방법[윈도우7 7100] [3] |
|
17587 | 0 | 05-08 |
4140 | 윈 도 우| 윈도 8 메트로 건너뛰고 바로 바탕화면으로 부팅하기 [10] |
|
17553 | 3 | 12-07 |
4139 | 하드웨어| Phoenix BIOS (slic2.0을slic2.1)수정하기(SamSung) [1] | gooddew | 17551 | 0 | 06-17 |
4138 | 윈 도 우| 윈도우8 스토어 앱 기본 설치 위치 변경하기 [14] | chkid | 17523 | 7 | 10-31 |
4137 | 윈 도 우| 작업 표시줄 좌측에 바탕화면 바로가기 아이콘 만들기 [4] | DOS | 17501 | 0 | 02-17 |
4136 | 기 타| 한글 첨부파일이 다운로드 안될때 | gooddew | 17491 | 1 | 09-10 |
4135 | 윈 도 우| 쉽고 빠르고 간단한 컴퓨터 최적화 팁! [27] | 핑크맛우유 | 17481 | 4 | 11-16 |
4134 | 소프트웨어| 임시폴더의 이동과 OS의 청결, 그리고.. [20] | GodFather | 17465 | 4 | 11-05 |
4133 | 윈 도 우| 윈도우XP IE8 초간단 "다운그레이드 후 재설치"... [2] |
|
17458 | 1 | 05-14 |
4132 | 윈 도 우| VHDman으로 교차부팅 이용하기 (WTG) [13] | 하늘보기 | 17426 | 15 | 04-28 |
4131 | Win7과 WinXP멀티부팅 하기 [19] | sp2 | 17350 | 0 | 09-22 |
수정할 곳 있으면 고쳐주세요.^^
(제 컴에선 정상작동...)