Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien
Toon posts:

[XP] 'reg delete' vanuit batch-file werkt niet? *

Pagina: 1
Acties:

Verwijderd

Topicstarter
Goedemiddag,

Ondertussen al een tijdje bezig om een batch-script te laten werken die voor de gebruikers in ons domein de extensies van MS Office standaard goed zet. Ik gebruik hiervoor het volgende script wat uitgevoerd wordt als de gebruiker (non-admin) inlogt:

code:
1
2
3
4
5
6
7
8
9
10
11
REG DELETE "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.doc" /f
ASSOC .doc=Word.Document.8
FTYPE Word.Document.8="%Programfiles%\Microsoft Office\OFFICE11\WINWORD.EXE" %1

REG DELETE "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.xls" /f
ASSOC .xls=Excel.Sheet.8
FTYPE Excel.Sheet.8="%Programfiles%\Microsoft Office\OFFICE11\EXCEL.EXE" %1

REG DELETE "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.ppt" /f
ASSOC .ppt=Powerpoint.Slide.8
FTYPE Powerpoint.Slide.8="%Programfiles%\Microsoft Office\OFFICE11\POWERPNT.EXE" %1


Dat zou moeten werken, maar ben erachter gekomen dat het alleen werkt. Als ik de batch file handmatig draai met "uitvoeren als", vervolgens de huidige gebruiker kiezen en dan het vinkje weghalen bij: "Mijn computer en gegevens beschermen tegen ongeoorloofde activiteiten van computerprogramma's". Dit is ook zo bij een admin account.

Is het te scripten dat de batch wordt uitgevoerd zonder de optie die het vinkje hierboven aanzet?

Alvast bedankt!

Edit: Mocht iemand mijn topictitel nog foutloos kunnen maken heel graag :)

[ Voor 2% gewijzigd door Verwijderd op 09-09-2009 15:52 . Reden: titel ]


  • Spider.007
  • Registratie: December 2000
  • Niet online

Spider.007

* Tetragrammaton

Dit topic past beter Windows Clients; dus ik verplaats hem even. Welk OS gaat dit over? :)

CSA > WOS
Batch file file assocation wijzigen > [] 'reg delete' vanuit batch-file werkt niet? *

---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate


Verwijderd

Topicstarter
Thanx voor je respons. Het gaat hier om Windows XP Pro SP3

Het gaat niet zozeer om "REG DELETE" maar dat er niks gaat werken van de batchfile zonder de optie "Mijn computer en gegevens beschermen tegen ongeoorloofde activiteiten van computerprogramma's" uit te vinken. Dus de .doc bestanden gaan nog steeds met automatisch met Word etc.

Ik wil dus graag weten hoe ik automatiseer dat de batch wordt uitgevoerd zonder het gevolg wat het vinkje zoals hierboven beschrijft uitvoert, dan werkt het dus niet. Bedankt alvast!

[ Voor 32% gewijzigd door Verwijderd op 09-09-2009 16:27 ]


  • Tags NL
  • Registratie: December 1999
  • Laatst online: 14:20

Tags NL

Harmful or Harmless?

Omzetten naar een .vbs script werkt wel goed (Je mag vaak geen Registry tools gebruiken als normale gebruiker). Bijvoorbeeld:

Dim WSHShell
On Error Resume Next
Set WSHShell = WScript.CreateObject("WScript.Shell")
WshShell.RegDelete "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run\ctfmon.exe"
set WSHShell = nothing

https://powershellisfun.com


  • RaZ
  • Registratie: November 2000
  • Niet online

RaZ

Funky Cold Medina

Komt die niet van de Anti-Malmware gebeuren?

Geen idee hoe dat ding heet, ik heb die namelijk zelf niet, en dat probleem wat je schets ook niet :P

Ey!! Macarena \o/


  • alt-92
  • Registratie: Maart 2000
  • Niet online

alt-92

ye olde farte

laat anders even een screenshot zien van de bewuste popup/venstermetvinkjeenzo -dan is er wellicht wat meer chocola van te maken.

ik heb een 864 GB floppydrive! - certified prutser - the social skills of a thermonuclear device


Verwijderd

Topicstarter
Screenshot "uitvoeren als", daar moet het vinkje dus weggehaald worden anders werkt het niet:

Afbeeldingslocatie: http://www.clickx.be/zd_images/2007/24/CL_ht_windows_02_26.jpg

De vraag is dus wat dat vinkje weghalen daar precies wijzigt zodat het wel werkt en dat vervolgens aan het script kunnen toevoegen.

Het vbs-script zoals hierboven beschreven kan ik morgen ook even proberen, thanx!

Verwijderd

Topicstarter
Met de tip om dit met VBS te doen is het uiteindelijk gelukt. Niet met de code zoals beschreven, deze kreeg ik niet aan de praat. Maar na wat uitproberen is dit 'm geworden (wellicht dat iemand anders er ook nog wat aan heeft):

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
Const HKEY_CLASSES_ROOT = &H80000000
Const HKEY_CURRENT_USER = &H80000001
Const HKEY_LOCAL_MACHINE = &H80000002
Const HKEY_USERS = &H80000003

' Object used to get StdRegProv Namespace
Set wmiLocator = CreateObject("WbemScripting.SWbemLocator")

' Object used to determine local machine name
Set wshNetwork = CreateObject("WScript.Network")

' Registry Provider (StdRegProv) lives in root\default namespace.
Set wmiNameSpace = wmiLocator.ConnectServer(wshNetwork.ComputerName, "root\default")
Set objRegistry = wmiNameSpace.Get("StdRegProv")

' Deletes Key with alle subkeys
sPath = "Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.doc"

lRC = DeleteRegEntry(HKEY_CURRENT_USER, sPath)

Function DeleteRegEntry(sHive, sEnumPath)
' Attempt to delete key. If it fails, start the subkey
' enumration process.
lRC = objRegistry.DeleteKey(sHive, sEnumPath)

' The deletion failed, start deleting subkeys.
If (lRC <> 0) Then

' Subkey Enumerator
On Error Resume Next

lRC = objRegistry.EnumKey(HKEY_CURRENT_USER, sEnumPath, sNames)

For Each sKeyName In sNames
If Err.Number <> 0 Then Exit For
lRC = DeleteRegEntry(sHive, sEnumPath & "\" & sKeyName)
Next

On Error Goto 0

' At this point we should have looped through all subkeys, trying
' to delete the registry key again.
lRC = objRegistry.DeleteKey(sHive, sEnumPath)

' Using assoc en ftype command to lock the extension to the program.

Set objShell = CreateObject("WScript.Shell") 
 
sScPath = WScript.ScriptFullName 
 
objShell.Run "cmd /c ""assoc .doc=Word.Document.8""" ,0 ,true 
 
objShell.Run "cmd /c ""ftype Word.Document.8=wscript ""%Programfiles%\Microsoft Office\OFFICE11\WINWORD.EXE"" ""%1"" """ ,0 ,true

End If

End Function


Bedankt voor jullie reacties!
Pagina: 1