Toon posts:

Powershell ISE, geen breakpoints als admin

Pagina: 1
Acties:

Vraag


  • Blokker_1999
  • Registratie: Februari 2003
  • Laatst online: 20:44

Blokker_1999

Full steam ahead

Topicstarter
Mijn vraag

Ik heb een script dat als admin uitgevoerd zal moeten worden omdat het enkele systeeminstellingen en regkeys zal aanpassen. Ik loop tegen enkele probleempjes aan en wil dit script dus debuggen via bijvoorbeeld Powershell ISE.

Als ik ISE als admin start, dan kan ik evenwel geen breakpoints zetten. De lijn selecteren en op F9 duwen geeft geen resultaat. Wil ik het via de command line doen met set-psbreakpoint krijg ik de melding "Specified method is not supported."

Relevante software en hardware die ik gebruik

Windows 10 1909 met Powershell 5.1 in een VM die net opnieuw gebouwd is. Local admin of domain user maakt niet uit.

Wat ik al gevonden of geprobeerd heb

Het is een probleem dat blijkbaar wel eens voorkomt, maar de weinige posts die ik online kan vinden wijzen naar problemen met bijvoorbeeld het niet lokaal hebben opgeslagen van het script wat hier niet het geval is. Ik kan het op andere systemen wel uitvoeren, maar daar heb ik niets aan de aanpassingen die het script probeert door te voeren. Maar ISE struikelt dus niet over het script.

No keyboard detected. Press F1 to continue.

Alle reacties


  • MAX3400
  • Registratie: Mei 2003
  • Laatst online: 21-12-2022

MAX3400

XBL: OctagonQontrol

Long shot maar komt je locale wel overeen met mogelijke waarden / uitvoer in het script? Niet dat jij bijvoorbeeld YY/MM/dd praat en het script ervanuit gaat (zonder declaratie) dat je YY/dd/MM hebt.

Mijn advertenties!!! | Mijn antwoorden zijn vaak niet snowflake-proof


  • Blokker_1999
  • Registratie: Februari 2003
  • Laatst online: 20:44

Blokker_1999

Full steam ahead

Topicstarter
De locale zeker niet. Die wordt, tot mijn grote ergernis, geforceerd via een logon script. For the love of God, why!!!!

No keyboard detected. Press F1 to continue.


  • _360_
  • Registratie: Januari 2011
  • Laatst online: 18:10
Heb je dit ook al onder powershell core met visual studio code proberen te debuggen?

  • Blokker_1999
  • Registratie: Februari 2003
  • Laatst online: 20:44

Blokker_1999

Full steam ahead

Topicstarter
Yep, maar die wil ook niet werken door een verschil in language modes. En dat klopt ook doordat er enkele cmdlets gebruikt worden die niet ondersteund worden in pwsh.

En als ik met posh probeer te debuggen in vs code dan probeert het script wel te starten, maar begint nooit echt iets uit te voeren.

[Voor 29% gewijzigd door Blokker_1999 op 21-01-2022 09:05]

No keyboard detected. Press F1 to continue.


  • _360_
  • Registratie: Januari 2011
  • Laatst online: 18:10
Het blijft een gissen zolang we geen code zien.

Even om te verifieren: we hebben het hier over een .ps1 file, geen powershell module oid?
Gaat het ook fout als je het script op je eigen host machine debugged met powershell_ise?

Voor de oefening zou je een kunnen beginnen met een nieuw leeg script, die je wil kan debuggen. En dan stuk voor stuk de functionaliteit overbrengen todat je evt. weer tegen ditzelfde probleem aanloopt.

Daarnaast kan je ipv
code:
1
set-psbreakpoint
ook eens
code:
1
Wait-Debugger
proberen.

  • Blokker_1999
  • Registratie: Februari 2003
  • Laatst online: 20:44

Blokker_1999

Full steam ahead

Topicstarter
Nog altijd niet de root cause gevonden, maar begin wel dichtbij te komen. Vandaag met procmon aan de slag gegaan.

Powershell en pwsh gaan bij het opstarten kijken of ze in je temp pad een script kunnen zetten en uitvoeren. Als dit faalt dan krijg je automatisch een constrained language mode. En die modus zorgt voor heel wat problemen, waaronder dus dat je niet kunt debuggen.

Is mijn pad dan niet geldig? Jawel. Maar ... de gebruikersnaam waarmee ik dit probeer is langer dan 8 karakters en wordt verwerkt in hoe MS met paden omgaat waarbij de ene applicatie de naam volledig uitschrijft terwijl een ander systeem probeert om het tot 8 tekens te beperken, bijv. Blokke~1. En daarop loopt het dus mis.

Als ik mijn environment variable aanpas naar een eenvoudig fixed pad zoals c:\temp dan kom ik terug in full language mode terug.

Wat er veranderd is weet ik niet. Want ben nu ook op andere systemen tegen dit probleem aangelopen toen dat daar een script ineens stopte met werken om dezelfde reden. Mogelijks een update die MS gepushed heeft waardoor er ergens iets veranderd is. Daar moet ik nog verder naar kijken.

Dat het dus als admin niet lukt komt omdat mijn admin account een langere naam heeft dan mijn gewone username die wel beperkt is tot onder de 8 karakters.

No keyboard detected. Press F1 to continue.

Pagina: 1


Tweakers maakt gebruik van cookies

Tweakers plaatst functionele en analytische cookies voor het functioneren van de website en het verbeteren van de website-ervaring. Deze cookies zijn noodzakelijk. Om op Tweakers relevantere advertenties te tonen en om ingesloten content van derden te tonen (bijvoorbeeld video's), vragen we je toestemming. Via ingesloten content kunnen derde partijen diensten leveren en verbeteren, bezoekersstatistieken bijhouden, gepersonaliseerde content tonen, gerichte advertenties tonen en gebruikersprofielen opbouwen. Hiervoor worden apparaatgegevens, IP-adres, geolocatie en surfgedrag vastgelegd.

Meer informatie vind je in ons cookiebeleid.

Sluiten

Toestemming beheren

Hieronder kun je per doeleinde of partij toestemming geven of intrekken. Meer informatie vind je in ons cookiebeleid.

Functioneel en analytisch

Deze cookies zijn noodzakelijk voor het functioneren van de website en het verbeteren van de website-ervaring. Klik op het informatie-icoon voor meer informatie. Meer details

janee

    Relevantere advertenties

    Dit beperkt het aantal keer dat dezelfde advertentie getoond wordt (frequency capping) en maakt het mogelijk om binnen Tweakers contextuele advertenties te tonen op basis van pagina's die je hebt bezocht. Meer details

    Tweakers genereert een willekeurige unieke code als identifier. Deze data wordt niet gedeeld met adverteerders of andere derde partijen en je kunt niet buiten Tweakers gevolgd worden. Indien je bent ingelogd, wordt deze identifier gekoppeld aan je account. Indien je niet bent ingelogd, wordt deze identifier gekoppeld aan je sessie die maximaal 4 maanden actief blijft. Je kunt deze toestemming te allen tijde intrekken.

    Ingesloten content van derden

    Deze cookies kunnen door derde partijen geplaatst worden via ingesloten content. Klik op het informatie-icoon voor meer informatie over de verwerkingsdoeleinden. Meer details

    janee