AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Windows-Sandbox

Ein Thema von himitsu · begonnen am 28. Feb 2021 · letzter Beitrag vom 12. Apr 2021
Antwort Antwort
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.339 Beiträge
 
Delphi 12 Athens
 
#1

AW: Windows-Sandbox

  Alt 3. Mär 2021, 09:18
Diese Dateien nach C:\Program Files (x86)\Embarcadero\Sandbox
aber vorher in SBLoad.wsb bei den <HostFolder>C:\Users\Home-Server\ euren %USERNAME% eintragen.
(das Verzeichnis ist schreibgeschützt und die WSB wo anders hin kopieren wollte ich noch nicht)

SBLoad.cmd : SBLoad.ps1 ausführen (PowerShell-Scripte können standardmäßig nicht direkt gestartet werden ... wegen Sicherheitsblabla, oder so)
SBLoad.ps1 : Starten/Stoppen der Sandbox und Auslesen/Anzeigen von Parametern
SBLoad.wsb : die Settings für die Sandbox (könnte man auch direkt starten)

SBInit.ps1 : das InitScript für in der Sandbox
* paar ShortCuts auf den Desktop (denn wenn RDP nicht als Vollbild, dann funktionieren die System-Shortcuts nicht, bzw. sie landen beim Host)
* einige Explorer-Settings (weil alles blöd)
* "Desktop\PAServer\setup_paserver.exe /s" -> PAServer installieren (auskommentiert, weil geht nicht)
* "regsvr32 /s Desktop\BDSBIN\bordbk270.dll" -> Debugger Kernel registrieren
* "Desktop\BDSBIN\rmtdbg270.exe" -> RemoteDebugger starten und dazu die Firewall erlauben
* IP und ComputerName anzeigen

> Verzeichnisse und Links
Desktop\Sandbox (readonly) = dieses Verzeichnis (zum Ausführen des SBInit.ps1)
Desktop\BDSBIN (readonly) = C:\Program Files (x86)\Embarcadero\Studio\21.0\bin (für RemoteDebugger)
Desktop\PAServer (readonly) = C:\Program Files (x86)\Embarcadero\Studio\21.0\PAServer (für PAServer-Setup )
Desktop\Downloads = C:\Users\%USERNAME%\Downloads (zum Dateiaustausch, aber geht auch über die Zwischenablage)
Desktop\Projekte = C:\Users\%USERNAME%\Documents\Embarcadero\Studio\Projekte
Desktop\CMD
Desktop\PowerShell
Desktop\Explorer
Desktop\Task-Manager

Das InitialScript "SBInit" wurde verschachtelt über zwei CMD aufgerufen, denn standardmäßig wird der LogonCommand-Command unsichtbar ausgeführt, aber ich wollte Fortschritt und Status sehn können.
Auch wenn es so aussieht, aber man kann nicht mehrere LogonCommand-Command's angeben und mehrzeilig geht auch nicht. (aber via CMD mit ^& könnte man dort Mehreres machen)


SOOOOO,

Probleme hab ich noch mit dem RemoteDebugger/PAServer.
* der PAServer lässt sich aktuell nur manuell installieren : Desktop\PAServer\setup_paserver.exe (mit Parameter /s wie silent)
* innerhalb des SBInit.ps1 macht die setup_paserver.exe aber garnichts (ja, natürlich auch dann nicht, wenn die Zeile nicht auskommentiert wäre)
* aber zumindestens der RemoteDebugger (rmtdbg270.exe) wird mit Standardparametern minimiert gestartet (und ist hoffentlich auch in der Firewall freigegeben)

PING auf IP oder Computername geht,
aber weder mit paserver.exe oder rmtdbg270.exe bekomm ich derzeit vom Delphi aus eine Verbindung.
* C:\Program Files (x86)\Embarcadero\PAServer\21.0\paserver.exe
* C:\Users\WDAGUtilityAccount\Desktop\BDSBIN\rmtdbg270.exe


C:\Program Files (x86)\Embarcadero\Sandbox\SBLoad.cmd oder direkt \SBLoad.wsb im Explorer starten (NICHT vergessen einmal in der WSB den UserName anzupassen)
Code:
ContainerId = b487c246-69ba-48d5-a4b7-e16d8448cf2b
RDP-Username = WDAGUtilityAccount
RDP-Password = a7899a1f-c756-4902-9d9d-0cacdca51a07

IP          = 192.168.197.97 (IPv6 gibt es auch)
Gateway     = 192.168.192.1

ComputerName = AC9CCB23-AA0A-4 (aus Systemsteuerung\System: ac9ccb23-aa0a-48ed-b8cb-943d8119956d)
RDP-UserName = b487c246-69ba-4
SessionName = 31C5CE94259D4006A9E4#0
ComputerName und SessionName scheinen (bei mir aktuell) immer gleich zu sein,
aber IP, ContainerId und RDP-Passwort ändern sich jedes Mal (Letztere lassen sich aber auslesen).


PING auf 192.168.197.97 , AC9CCB23-AA0A-4 oder AC9CCB23-AA0A-48ED-B8CB-943D8119956D

und mit Debugger auf C:\Users\WDAGUtilityAccount\Desktop\Projekte\Win32\Debug\Project1.exe
Angehängte Dateien
Dateityp: zip Sandbox.zip (2,3 KB, 4x aufgerufen)
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu ( 3. Mär 2021 um 22:03 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.339 Beiträge
 
Delphi 12 Athens
 
#2

AW: Windows-Sandbox

  Alt 6. Mär 2021, 22:01
Es fehlte nur noch bissl Feinschliff an der Firewall.

Vorbereitung:
* Dateien nach C:\Program Files (x86)\Embarcadero\Sandbox\ kopieren
* in SBLoad.wsb euren Usernamen eintragen: <MappedFolder><HostFolder>C:\Users\USERNAME\
* SBLoad.cmd oder direkt SBLoad.wsb starten (die SBLoad.ps1 lässt sich standardmäßig nicht ausführen, daher die CMD)

Testprojekt erstellen und kompilieren: C:\Users\%USERNAME%\Documents\Embarcadero\Studio\Projekte\Project1.dpr
(den Namen dürft ihr gern anpassen)

und nachfolgend die 3 Varianten zum Debuggen
* HostName/RemoteComputer eventuell anpassen, siehe Start-CMD in VM > IPAddress, ComputerName oder VMLocalAddress
* Variante 1 und 2 mit dem Remode-Debugger gehen direkt, da Remode-Debugger bereits gestartet wurde
* bei Variante 3 muß nach jedem Start der VM der PAServer installiert verden (automatisch geht nicht, da Setup blöd)



Start > Prozess laden... > Extern
* Debugger: Win32 oder Win64
* Remote-Pfad: C:\Users\WDAGUtilityAccount\Desktop\Projekte\Win32\Debug\Project1.exe
* Remote-Host: 88E841EF-48B5-4

in VM starten: C:\Users\WDAGUtilityAccount\Desktop\Projekte\Win32\Debug\Project1.exe
Start > Mit Prozess verbinden... > Extern
* Debugger: Win32 oder Win64
* Remote-Computer: 88E841EF-48B5-4
* [Aktualisieren]
* Project1.exe

PAServer installieren: Desktop > "PAServer Setup" (geht nicht automatisiert, weil die Setups von Embarcadero einfach nur Schrott sind und sowas nicht können)
PAServer starten: Desktop > PAServer
Delphi Projektverwaltung: Project1 > Zielplattform > Win32 oder Win64 > KontextMenü: Verbindung bearbeiten...
* Hinzufügen "Windows Sandbox"
* Plattform: Win32 oder Win64
* Host-Name: 88E841EF-48B5-4
* Port-Nummer: 64211
* Passwort: lassen (z.B. leer, oder was auch immer ihr beim Start des PAServers angegeben habt)
* Verbindung testen (wenn es hier schon knallt, dann Fehler suchen)
* Speichern
* F9 (wenn keine Verbindung zum PAServer besteht, dann Delphi über TaskManager abschießen, denn es reagiert nie wieder)



Also grundsätzlich ist die VM zum Debuggen nutzbar.


Was mir aufgefallen war:
* Im Explorer und Startmenü funktionieren Suche/Filter garnicht (liegt nicht an mir, das war schon so)
* Das Setup vom PAServer ist Mist, denn obwohl InstallShield, funktioniert eine automatische Instalation (Parameter /s) nicht ... das Setup macht dann einfach garnichts
* Warum steht in diesem Setup (PreInstallation/PreRequisites) nirgendwo, dass das Ding die Java- und C++-Runtime installiert?
* Wenn der PAServer nicht reagiert, dann bleibt Delphi 10.4.2 gnadenlos hängen und man kann nur via TaskManager antworten
* Wenn ich bei Win32/Win64 ein Remote-Profiel anlege, dann lässt sich nicht mehr lokal debuggen
* * ausgenommen den PAServer auch lokal installieren und ein Profil für "localhost"
* * oder in Projektverwaltung im Kontextmenü "Standard wiederherstellen", was aber auch bissl unpraktisch ist

* diese Sandbox nutzt die "Technologie" vom Hyper-V, aber wenn ich im Hyper-V nach VMs suche, dann ist die da nicht dabei (schade, dachte über die Hyper-V-API im Powershell an die IP kommen zu können ... aber egal, ich kann auch von StartStript die IP in eine Datei auf einer Freigabe schreiben, oder via TCP an die IP den Computername des Hosts schicken, welchen ich reingeben kann)
Angehängte Dateien
Dateityp: zip Sandbox.zip (3,0 KB, 6x aufgerufen)
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu ( 7. Mär 2021 um 11:55 Uhr)
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.196 Beiträge
 
Delphi 10 Seattle Enterprise
 
#3

AW: Windows-Sandbox

  Alt 24. Mär 2021, 18:27
Ich bin leider immer noch nicht dazu gekommen deine Templates auszuprobieren (bin immer noch gespannt), zeitgleich gibt es schon Neuigkeiten für kommende Versionen:

Quelle: https://blogs.windows.com/windows-in...w-build-21343/
Zitat:
Both Windows Sandbox and Microsoft Defender Application Guard take advantage of special container technology built into Windows 10. Previously, the container runtime matched the host. Starting with Build 21343, we are introducing a new runtime that is designed and optimized for container scenarios. It is lightweight and allows faster launch times for both Windows Sandbox and Microsoft Defender Application Guard.

We do not expect this change to affect the application compatibility inside Windows Sandbox. However, this is a significant change and users may encounter some differences in behavior.

Additionally, Windows Sandbox now includes the new Chromium based Microsoft Edge browser (as of Build 21313). Here are instructions on how to get started with Windows Sandbox.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.339 Beiträge
 
Delphi 12 Athens
 
#4

AW: Windows-Sandbox

  Alt 24. Mär 2021, 19:49
Ohne den PAServer ist eine "ideale" Anbindung an Delphi leider so nicht richtig möglich.
https://quality.embarcadero.com/browse/RSP-33502 (mal sehn)


Ein aktueller Edge kann nicht schaden (kann man ja von ausgehen, dass der in normalen Windowsen auch drauf ist)

aber ich hoffe die "verbessern" nicht all zuviel, denn aktuell ist dieses abgespeckte Windows ja gerade deswegen so praktisch,
da möglichst nix drauf, um Abhängigkeiten super testen zu können. (2,3 GB für das komplette 64 Bit-Windows)


Schneller starten klingt auch gut.
Die nutzen zwar die Techniken vom Hyper-V, aber leider den Hyper-V nicht direkt. (leider dadurch nicht dessen API nutzbar )

Aber über die Images der Sandbox war ich jetzt mal gestolpert und "eigentlich" sind die ganz normal, also die haben Snapshots und Dergleichen drin, auch wenn man sie (aktuell) nicht nutzen kann.
C:\ProgramData\Microsoft\Windows\Containers (die Images für die Windows Sandbox und den Windows Defender Application Guard)



Im Notfall könnte ich aber auch auf das Windows-SDK ausweichen und über WinPE (Windows Preinstallations Environment) ein Windows bauen
und im Hyper-V / VirtualBox / VMware installieren lassen.

Es gibt auch eine fertige Windows Entwickler-VM, aber das ist eine VM mit installiertem Visual Studio.
Für meinen Verwendungszweck (Minimal-Test) also komplett ungeeignet, aber wenn jemand mal "kurz" in Visual Studio gucken will. (oder wer gern auf Mac oder Linux kostenlos damit programmieren will)
https://developer.microsoft.com/de-d...tual-machines/ (20 GB alleine der Download)

Und dann gibt's eben noch die Test-VMs mit Internet Explorer / Edge.
https://developer.microsoft.com/en-u...dge/tools/vms/
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (24. Mär 2021 um 20:35 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.339 Beiträge
 
Delphi 12 Athens
 
#5

AW: Windows-Sandbox

  Alt 9. Apr 2021, 15:20
Ach ja, wenn über Explorer aus der ZIP entpackt, dann in den Dateieigenschaften der CMD das "Zulassen" anhaken, sonst sperrt SmartScreen die Ausführung.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Benutzerbild von dummzeuch
dummzeuch

Registriert seit: 11. Aug 2012
Ort: Essen
1.679 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#6

AW: Windows-Sandbox

  Alt 9. Apr 2021, 18:19
Nur falls sich jemand nach Installatin der Sandbox ebenfalls wundert: Sie scheint sich alleine dadurch, dass sie installiert ist, auf Spiele auszuwirken. Ich habe mich danach erstmal total gewundert, weshalb "Seven Kingdoms" plötzlich fast unspielbar wurde. Der Mauszeiger hatte eine dermaßen große Verzögerung, dass er kaum mehr sauber zu positionieren war. Nach Deinstallation der Sandbox war das Phänomen wieder weg.
Thomas Mueller
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.196 Beiträge
 
Delphi 10 Seattle Enterprise
 
#7

AW: Windows-Sandbox

  Alt 10. Apr 2021, 05:42
Sehr merkwürdig - Wie oft ist mir schon passiert dass im Hintergrund noch eine komplette VM lief und ich es selbst bei Videospielen nicht einmal bemerkt hatte. Und mein PC ist fünf Jahre alt.
  Mit Zitat antworten Zitat
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.073 Beiträge
 
Delphi 10.4 Sydney
 
#8

AW: Windows-Sandbox

  Alt 12. Apr 2021, 14:37
Nur falls sich jemand nach Installatin der Sandbox ebenfalls wundert: Sie scheint sich alleine dadurch, dass sie installiert ist, auf Spiele auszuwirken. Ich habe mich danach erstmal total gewundert, weshalb "Seven Kingdoms" plötzlich fast unspielbar wurde. Der Mauszeiger hatte eine dermaßen große Verzögerung, dass er kaum mehr sauber zu positionieren war. Nach Deinstallation der Sandbox war das Phänomen wieder weg.
Interessantes Phänomen.
Hast du das auch mit einer normalen Hyper-V VM?
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:50 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz