윈 도 우 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 | - | - | - |
3643 | 소프트웨어| 아이피 저장 복원 고정아이피 넣기 [14] | 지룡자 | 1979 | 11 | 04-19 |
3642 | 윈 도 우| [수정] RegOwnership 이용 : 레지소유권 얻기 <--> ... [9] |
|
1094 | 9 | 04-18 |
3641 | 윈 도 우| 윈10 에 기본장착된 "사용자휴대폰" 앱으로 PC ... [28] | 와니 | 6414 | 4 | 04-12 |
3640 | 윈 도 우| 확장자,숨김(OnOff - NoFile 레지) // 바탕아이콘 정렬문제... [6] |
|
1864 | 16 | 04-11 |
3639 | 소프트웨어| 파일 이름으로 폴더 만들고 이동하기 [14] | 지후빠 | 1956 | 15 | 04-10 |
3638 | 소프트웨어| SD카드를 공장초기화로 포맷을 합니다. [6] | 하늘은높고 | 3727 | 10 | 04-10 |
3637 | 소프트웨어| (추가3) 클립보드로 파일명 복사, VBScript에서, 유틸 소개 [18] | 지후빠 | 2150 | 11 | 04-06 |
3636 | 기 타| 원격 PC 종료 [7] | gooddew | 3859 | 9 | 04-06 |
3635 | 윈 도 우| Win PE에서 윈도우 UEFI설치를 합니다. [18] | 하늘은높고 | 5217 | 30 | 04-05 |
3634 | 윈 도 우| file_folder2Hide&show, vbe <--> vbs [2] |
|
684 | 8 | 04-03 |
3633 | 윈 도 우| Move over there 등록_제거 final 2020-04-15 [51] |
|
2741 | 22 | 03-29 |
3632 | 하드웨어| 메인보드 모델명 확인하기 [5] | gooddew | 3697 | 22 | 03-28 |
3631 | 소프트웨어| 진행바와 함께 URL 다운로드 VBS + AHK [15] | 지후빠 | 1399 | 10 | 03-28 |
3630 | 윈 도 우| Windows 10 버전별 CPU 지원 리스트.. [4] | 은주얌 | 3155 | 4 | 03-27 |
3629 | 윈 도 우| Gpedit.msc는 무엇 이죠? (구글링) [4] |
|
1364 | 1 | 03-27 |
3628 | 기 타| 특정 프로그램이 32비트? 64 비트? 여부 확인하기 [5] | gooddew | 1480 | 8 | 03-27 |
3627 | 윈 도 우| 레노버 노트북 충천USB 사용시 마우스 버벅거림 [1] | 번개 | 757 | 1 | 03-26 |
» | 윈 도 우| Move over there 우메뉴등록_제거 + 그룹정책 백복 [10] |
|
1231 | 11 | 03-25 |
3625 | 윈 도 우| 탐색기 화면에 글자가 부실해 보일 때 설정 방법 [1] | 하늘은높고 | 1454 | 3 | 03-25 |
3624 | 소프트웨어| VBScript 기능 확장하기 개요 - API, COM server [8] | 지후빠 | 1146 | 9 | 03-24 |
수정할 곳 있으면 고쳐주세요.^^
(제 컴에선 정상작동...)