Vraag


Acties:
  • 0 Henk 'm!

  • Ylvakiller
  • Registratie: Mei 2014
  • Laatst online: 16-10-2022
Hallo,

Ik wil een driver aan en uit zetten dmv. een batch script.

Hiervoor heb ik eerst de commando's geprobeerd via cmd. Hier geven ze het gewenste effect.
Als ik de commando's draai via een batch bestand geven ze geen enkel effect.

De software die ik gebruik is DevManView (64 bit versie)http://www.nirsoft.net/utils/device_manager_view.html van NirSoft.
Ik wil het volgende commando runnen:
devmanview.exe /disable_enable "@oem1.inf,%iPhone.DeviceDesc%;Apple Mobile Device USB Driver"
Voor het testen gebruik ik hetvolgende:
devmanview.exe /disable "@oem1.inf,%iPhone.DeviceDesc%;Apple Mobile Device USB Driver"
PAUSE
devmanview.exe /enable "@oem1.inf,%iPhone.DeviceDesc%;Apple Mobile Device USB Driver"
Ik heb de map met de .exe aan het PATH toegevoegd.
Als ik de losse disable en enable commando's draai zie ik de driver aan en uit gaan in apparaatbeheer, maar als ik ze dmv. het script draai dan gebeurd er op het oog niets in apparaatbeheer, en de driver werkt nog steeds.

Ik heb een aantal dingen geprobeerd, allemaal zonder success;
  • Batch draaien als Admin
  • Batch draaien in taakplanner met meeste bevoegdheden
  • In Batch eerst naar de C schijf gaan waar ik ook in zit als ik de commandos los draai
  • Aleen de disable command runnen
  • Start /Wait voor het commando zetten zodat de batch pas verder gaat als het .exe af is gesloten
  • In de beveiliging van de exe de user volledig machtigingen geven
Ik vraag me af of ik iets heel erg basics over het hoofd aan het zien ben?
Alle suggesties zijn welkom.

Met Vriendelijke Groet,

Remco Geuze

Beste antwoord (via Ylvakiller op 13-09-2016 14:31)


  • downtime
  • Registratie: Januari 2000
  • Niet online

downtime

Everybody lies

Ik zie procent tekens in dat commando. DOS doet aan variable expansion. Is dat het probleem hier niet?

Je kunt procenten escapen met een tweede procent teken. Dus %% i.p.v. %.

[ Voor 27% gewijzigd door downtime op 11-09-2016 15:26 ]

Alle reacties


Acties:
  • 0 Henk 'm!

  • Mijzelf
  • Registratie: September 2004
  • Niet online
Wat is de extensie van die batchfile? Geen idee of het nog steeds zo is, maar op W2000 werd een .bat file standaard uitgevoerd door command.exe, die 16 bits DOS (5) emuleert, terwijl een .cmd file wordt uitgevoerd door cmd.exe, die de 'native' command prompt van Windows NT is.

Ook geen idee of dat voor jouw toepassing uitmaakt.

Acties:
  • Beste antwoord
  • +2 Henk 'm!

  • downtime
  • Registratie: Januari 2000
  • Niet online

downtime

Everybody lies

Ik zie procent tekens in dat commando. DOS doet aan variable expansion. Is dat het probleem hier niet?

Je kunt procenten escapen met een tweede procent teken. Dus %% i.p.v. %.

[ Voor 27% gewijzigd door downtime op 11-09-2016 15:26 ]


Acties:
  • 0 Henk 'm!

  • Ylvakiller
  • Registratie: Mei 2014
  • Laatst online: 16-10-2022
Het is inderdaad een .bat, Ik ga vanavond het nogmaals proberen met 2x % om te kijken of dat helpt. Bedankt voor jullie suggesties alvast

Acties:
  • 0 Henk 'm!

  • Squ1zZy
  • Registratie: April 2011
  • Niet online
Andere suggestie is om batch los te laten ... Mensen, alstublieft. Ponskaarten werken ook nog, maar er zijn reden om het niet meer te gebruiken.

Ga a.u.b. over op PowerShell.

Acties:
  • 0 Henk 'm!

  • Rmg
  • Registratie: November 2003
  • Nu online

Rmg

%~dp0 zou je eens naar moeten kijken. Zo op het oog verwacht ik een issue met je working dir / script dir

Acties:
  • 0 Henk 'm!

  • Killah_Priest
  • Registratie: Augustus 2001
  • Laatst online: 13-06 19:47
Squ1zZy schreef op zondag 11 september 2016 @ 21:46:
Andere suggestie is om batch los te laten ... Mensen, alstublieft. Ponskaarten werken ook nog, maar er zijn reden om het niet meer te gebruiken.

Ga a.u.b. over op PowerShell.
Dit dus.. Gebruik Powershell ipv deprecated technieken als Batch.
Ik kan ook gaten in de muur boren met een handboor, echter is een elektrische boormachine veel makkelijker en efficiënter.

Acties:
  • 0 Henk 'm!

  • downtime
  • Registratie: Januari 2000
  • Niet online

downtime

Everybody lies

Killah_Priest schreef op maandag 12 september 2016 @ 09:30:
[...]

Dit dus.. Gebruik Powershell ipv deprecated technieken als Batch.
Ik kan ook gaten in de muur boren met een handboor, echter is een elektrische boormachine veel makkelijker en efficiënter.
Sinds wanneer is batch "deprecated"? Heb je daar een bron voor?

Ik vind batch vandaag de dag geen aanrader meer, behalve voor de allersimpelste zaken, maar ik heb nog nooit gehoord dat het officieel deprecated is.

Acties:
  • 0 Henk 'm!

  • Killah_Priest
  • Registratie: Augustus 2001
  • Laatst online: 13-06 19:47
downtime schreef op maandag 12 september 2016 @ 12:25:
[...]

Sinds wanneer is batch "deprecated"? Heb je daar een bron voor?

Ik vind batch vandaag de dag geen aanrader meer, behalve voor de allersimpelste zaken, maar ik heb nog nooit gehoord dat het officieel deprecated is.
Officieel niet, maar er wordt NIETS meer voor ontwikkeld (ivm legacy troep zullen zij dit wel nooit doen). Zie ook de koers van MS met Powershell (inclusief het open sourcen daarvan etc), batch was 10 jaar geleden dood aan het gaan, het is nu anno 2016 ook gewoon dood.

(edit : als je de definitie van deprecated erbij pakt dan zie je ook dat Batch in feite gewoon deprecated is : het is aanwezig, het is ook bruikbaar, het is echter niet aan te raden en er zijn betere tools voor. Terugvallen op batch dien je alleen te doen wanneer een oplossing in een moderne scripttaal niet mogelijk of wenselijk is).

[ Voor 21% gewijzigd door Killah_Priest op 12-09-2016 14:53 ]


Acties:
  • 0 Henk 'm!

  • Brahiewahiewa
  • Registratie: Oktober 2001
  • Laatst online: 30-09-2022

Brahiewahiewa

boelkloedig

Killah_Priest schreef op maandag 12 september 2016 @ 14:46:
[...]

Officieel niet, maar er wordt NIETS meer voor ontwikkeld (ivm legacy troep zullen zij dit wel nooit doen). Zie ook de koers van MS met Powershell (inclusief het open sourcen daarvan etc), batch was 10 jaar geleden dood aan het gaan, het is nu anno 2016 ook gewoon dood.

(edit : als je de definitie van deprecated erbij pakt dan zie je ook dat Batch in feite gewoon deprecated is : het is aanwezig, het is ook bruikbaar, het is echter niet aan te raden en er zijn betere tools voor. Terugvallen op batch dien je alleen te doen wanneer een oplossing in een moderne scripttaal niet mogelijk of wenselijk is).
't Lijkt me in dit geval nogal overtrokken om de TS af te branden op het gebruik van batch files.
Kom op, 't zijn drie regeltjes: hutsefluts disable, pause, hutsefluts enable
Wordt dat nou echt beter als je al die 86 getSimpleDeviceInfo commando's hebt doorgeworsteld?

Overigens denk ik dat downtime gelijk heeft

QnJhaGlld2FoaWV3YQ==


Acties:
  • 0 Henk 'm!

  • Henkenator68NL
  • Registratie: Oktober 2010
  • Laatst online: 21-05 00:03
R. I. P.
vandaag heen gegaan ons trouwe BEEzzsje, luistererend met de naam.

.Batch.exe

(neeh t was echt niet Snoopy... Nee echt niet).

Breek mij de Batch niet open. Het allerslechtste waar je kon gebeuren.. Was al die over al random neer gebatchde Batche files zo groot dat je weer batch file moet maken om te zorgen dat ze nog veel meer kregen te doen.
Feitelijk was het die rothouding van dat batch file dat vreemd ging...

Batch-elfield4.. Now wars Will brutal

bee assassinated as a horseye

Bye Bitch bestand

[img]http://hwbot.org/signature/u27292.png[/img]


Acties:
  • +1 Henk 'm!

  • Killah_Priest
  • Registratie: Augustus 2001
  • Laatst online: 13-06 19:47
Brahiewahiewa schreef op maandag 12 september 2016 @ 22:58:
[...]

't Lijkt me in dit geval nogal overtrokken om de TS af te branden op het gebruik van batch files.
Kom op, 't zijn drie regeltjes: hutsefluts disable, pause, hutsefluts enable
Wordt dat nou echt beter als je al die 86 getSimpleDeviceInfo commando's hebt doorgeworsteld?

Overigens denk ik dat downtime gelijk heeft
Ik brand nergens de TS af hoor... Ik beaam gewoon wat mijn voorganger heeft aangegeven en geef een reactie op de reactie die ik daar weer op krijg.

Maar goed, om de TS verder te helpen (scripten blijft scripten) : ik zie dat deze aangeeft alleen het disable commando te draaien in het bestand : werkt het dan wel?
Wat ik dus eigenlijk bedoel te zeggen is : wat als je alleen de regel mbt enable of disable in je bat bestand hebt staan (desnoods even REM voor de andere regels zetten), werkt het dan wel (dus komt er dan wel een disable of enable?)

(Edit : ik was net een powershell versie aan het testen van een simpel script waar dit mee zou moeten kunnen zonder 3rd party software dmv wmi maar ik val om van de slaap. Morgen post ik deze wel mits het werkt)

(edit 2 : PS code via WMI getest, ik heb een StopService method in mijn testje zitten, echter doet deze niet wat het moet doen (in mijn geval de driver van mijn webcam stoppen). Commando voert correct uit maar er gebeurt niets dus helaas pindakaas)

[ Voor 18% gewijzigd door Killah_Priest op 13-09-2016 08:07 ]


Acties:
  • 0 Henk 'm!

  • maratropa
  • Registratie: Maart 2000
  • Niet online
Killah_Priest schreef op maandag 12 september 2016 @ 14:46:
[...]

Officieel niet, maar er wordt NIETS meer voor ontwikkeld (ivm legacy troep zullen zij dit wel nooit doen). Zie ook de koers van MS met Powershell (inclusief het open sourcen daarvan etc), batch was 10 jaar geleden dood aan het gaan, het is nu anno 2016 ook gewoon dood.

(edit : als je de definitie van deprecated erbij pakt dan zie je ook dat Batch in feite gewoon deprecated is : het is aanwezig, het is ook bruikbaar, het is echter niet aan te raden en er zijn betere tools voor. Terugvallen op batch dien je alleen te doen wanneer een oplossing in een moderne scripttaal niet mogelijk of wenselijk is).
Volgens mij zijn er nog zat mensen die vanuit de DOS tijd het maken van .bat bestandjes mee gekregen hebben en daar nog steeds van gebruik maken, omdat het prima voldoet. Ik heb ook de intentie om powershell te leren maar eigenlijk stel ik dat steeds uit omdat batch files nog prima voldoen. Is het je werk dan is het natuurlijk een ander verhaal..

specs


Acties:
  • 0 Henk 'm!

  • Ylvakiller
  • Registratie: Mei 2014
  • Laatst online: 16-10-2022
Deze vraag is meer uitgelopen in een discussie of batch uberhaupt nog wel gebruikt zou moeten worden...

Ik heb zelf alleen ervaring met batch dus daarom was het voor mij de goto oplossing.

De dubbele %% werkte wel maar uiteindelijk was het makkelijker om de commando's rechtstreeks in taakplanner te laten uitvoeren. Hierdoor is het originele probleem in ieder geval opgelost.

Als ik jullie reacties lees is het wel duidelijk dat ik mezelf moet gaan verdiepen in powershell :)

Om de suggesties te beantwoorden:

@downtime, dit was inderdaad het probleem, jouw oplossing werkte in mijn geval
@Killah_Priest Nope, het maakt niet uit wat ik de in de batch, er gebeurd niets, als ik allen de enable, of alleen de disable als een enkele lijn in bat heb staan zonder iets anders heeft het ook geen invloed, iets dat wel werkte via de commandline, het probleem zat hem in de variable expansion zoals downtime aangaf.

Iedereen bedankt voor jullie tijd en moeite!
Pagina: 1