The Wiert Corner – irregular stream of stuff

Jeroen W. Pluimers on .NET, C#, Delphi, databases, and personal interests

  • My badges

  • Twitter Updates

  • My Flickr Stream

  • Pages

  • All categories

  • Enter your email address to subscribe to this blog and receive notifications of new posts by email.

    Join 1,839 other subscribers

Archive for the ‘Windows 10’ Category

The only practical way of running x86 VMs on Apple M1 seems to be QEMU based UTM

Posted by jpluimers on 2022/07/01

Few articles exist on running x86 VMs on Apple M1 architecture.

This is the best I found, and clearly states that QEMU based UTM is the way to go, but notably lacks 3D support: [Wayback/Archive.is] Apple Silicon M1: How to run x86 and ARM Virtual Machines on it? | by Dmitry Yarygin | Mar, 2021 | Medium

Without VMs, but running Windows x86_64 code is already possible using Windows 10 for ARM via Parallels: [Wayback] Windows 10 on M1 Macs: What you can do (virtualization, sorta) and can’t (Boot Camp) | Macworld.

VMware Fusion is not going to support x86_64 virtualisation anytime soon as per [Wayback/Archive.is] Fusion on Apple Silicon: Progress Update – VMware Fusion Blog – VMware Blogs

What about x86 emulation?

We get asked regularly about running x86 VMs on M1 Macs. It makes total sense… If Apple can emulate x86 with Rosetta 2, surely VMware can do something too, right?

Well, the short answer is that there isn’t exactly much business value relative to the engineering effort that is required, at least for the time being. For now, we’re laser focused on making Arm Linux VMs on Apple silicon a delight to use.

So, to be a bit blunt, running x86 operating systems on Apple silicon is not something we are planning to deliver with this project. Installing Windows or Linux from an x86 ISO, for example, will not work.

More on UTM, which is open source:

Now hopefully someone posts a Wiki of running x86_64 Windows on Apple M1 (:

This is a small start that it can be done [Wayback/Archive.is] Has anyone tried running Delphi on Windows ARM? – Delphi IDE and APIs – Delphi-PRAXiS [en]

It works well. I’ve managed to build and run my VCL and FMX projects on Android, iOS, Windows and Mac without any problems.
Note that both Windows ARM and the way it runs Delphi are still in preview so tread carefully!
On 4/18/2021 at 8:01 PM, Der schöne Günther said:
Can you confirm it cannot only build projects but also debug them?
I can debug Windows and Android no problem. I’m having issues debugging iOS as it’s stopping in the IDE but showing the CPU rather than code views. I believe this might be a badly built component I need to re-install rather than an issue with the environment but can’t confirm either way at the moment.

An update on the debugging issues on iOS – it’s all working now. My VM just needed a restart and I can debug without problems now.

--jeroen

Posted in Apple, M1 Mac, Mac, Mac OS X / OS X / MacOS, Power User, Qemu, UTM, Virtualization, Windows, Windows 10 | Leave a Comment »

Windows: require UAC elevation to enter password instead of a simple “Yes” helps preventing USB HID attacks

Posted by jpluimers on 2022/06/17

Of course you should be careful inserting random USB devices. Apart from USB HID attacks, they could perform other attacks like DMA ones.

To help preventing automated UAC elevation, you can make it harder to activate UAC by requiring a password. I think the below registry trick and policy is supported as of Windows 7, but it could be more recent (i.e. Windows 8.1).

The video below shows the trick, but does not document it in text. So here we go [WayBack] Windows doesn’t ask for your password when changing settings – Windows 10 Forums

reg add "HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\System" /v "ConsentPromptBehaviorAdmin" /t REG_DWORD /d "1" /f
reg add "HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\System" /v "ConsentPromptBehaviorUser" /t REG_DWORD /d "1" /f
reg add "HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\System" /v "EnableInstallerDetection" /t REG_DWORD /d "1" /f
reg add "HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\System" /v "EnableLUA" /t REG_DWORD /d "1" /f
reg add "HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\System" /v "EnableSecureUIAPaths" /t REG_DWORD /d "1" /f
reg add "HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\System" /v "EnableUIADesktopToggle" /t REG_DWORD /d "1" /f
reg add "HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\System" /v "FilterAdministratorToken" /t REG_DWORD /d "1" /f
reg add "HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\System" /v "PromptOnSecureDesktop" /t REG_DWORD /d "1" /f

(A more elaborate batch file with lots more hardening is at [WayBack] Win 10 edits · GitHub)

The registry trick is especially useful for Home editions of Windows which do not allow you to run the Security Policy control panel applet secpol.msc.

The first two values explained at [WayBack] How to configure Windows UAC prompt behavior for admins and users – gHacks Tech News:

ConsentPromptBehaviorAdmin

This key defines the User Account Control behavior for system administrators. The default value is set to prompt but do not require credentials to be entered. Here are all possible values:

  • 0: A value of 0 allows administrators to perform operations that require elevation without consent (meaning prompts) or credentials (meaning authentication).
  • 1: A value of 1 requires the admin to enter username and password when operations require elevated privileges on a secure desktop.
  • 2: The value of 2 displays the UAC prompt that needs to be permitted or denied on a secure desktop. No authentication is required.
  • 3:  A value of 3 prompts for credentials.
  • 4: A value of 4 prompts for consent by displaying the UAC prompt.
  • 5: The default value of 5 prompts for consent for non-Windows binaries.

ConsentPromptBehaviorUser

  • 0: A value of 0 will automatically deny any operation that requires elevated privileges if executed by standard users.
  • 1: The value of 1 will display a prompt to enter the username and password of an administrator to run the operation with elevated privileges on the secure desktop.
  • 3: The default value of 3 prompts for credentials on a secure desktop.

The changes should take effect immediately. You can for instance set the admin behavior to 0 so that no prompts are displayed, and user behavior to 0 as well to prevent them from running operations that require elevated privileges.

Related:

Read the rest of this entry »

Posted in Power User, Windows, Windows 10, Windows 8, Windows 8.1 | Leave a Comment »

How can you export the Visual Studio Code extension list? (via: Stack Overflow)

Posted by jpluimers on 2022/06/16

Adapted from [Archive.is] How can you export the Visual Studio Code extension list? – Stack Overflow, presuming that code is on the PATH:

  1. From the command-line interface on MacOS, Linux, BSD or on Windows with git installed:
    code --list-extensions | xargs -L 1 echo code --install-extension
  2. From the command-line interface on MacOS, Linux, BSD or on Windows without git installed:
    code --list-extensions | % { "code --install-extension $_" }

    or, as I think, more clearly (see also [WayBack] syntax – What does “%” (percent) do in PowerShell? – Stack Overflow):

    code --list-extensions | foreach { "code --install-extension $_" }

    or even more explanatory:

    code --list-extensions | ForEach-Object { "code --install-extension $_" }
  3. From the command-line interface on Windows as a plain cmd.exe command:
    @for /f %l in ('code --list-extensions') do @echo code --install-extension %l
  4. On Windows as a plain cmd.exe batch file (in a .bat/.cmd script):
    @for /f %%l in ('code --list-extensions') do @echo code --install-extension %%l
  5. The above two on Windows can also be done using PowerShell:
    PowerShell -Command "code --list-extensions | % { """""code --install-extension $_""""" }"

    Note that here too, the % can be expanded into foreach or ForEach-Object for clarity.

All of the above prepend “code --install-extension ” (note the trailing space) before each installed Visual Studio Code extension.

They all give you a list like this which you can execute on any machine having Visual Studio Code installed and its code on the PATH, and a working internet connection:

code --install-extension DavidAnson.vscode-markdownlint
code --install-extension ms-vscode.powershell
code --install-extension yzhang.markdown-all-in-onex

(This is about the minimum install for me to edit markdown documents and do useful things with PowerShell).

Of course you can pipe these to a text-file script to execute them later on.

The double-quote escaping is based on [Wayback/Archive.is] How to escape PowerShell double quotes from a .bat file – Stack Overflow:

you need to escape the " on the command line, inside a double quoted string. From my testing, the only thing that seems to work is quadruple double quotes """" inside the quoted parameter:

powershell.exe -command "echo '""""X""""'"

Via: [Archive.is] how to save your visual studio code extension list – Google Search

--jeroen

Posted in *nix, *nix-tools, .NET, bash, Batch-Files, CommandLine, Console (command prompt window), Development, Mac OS X / OS X / MacOS, Power User, PowerShell, PowerShell, Software Development, Visual Studio and tools, vscode Visual Studio Code, Windows, Windows 10, Windows 7, Windows 8, Windows 8.1, Windows Development, Windows Server 2008, Windows Server 2008 R2, Windows Server 2012, Windows Server 2012 R2, Windows Server 2016, WSL Windows Subsystem for Linux, xargs | Leave a Comment »

Some notes on (temporarily) using CIFS/SMBv1 with Windows 10

Posted by jpluimers on 2022/06/13

Warning: only do this in a well confined network because of the SMBv1 has serious security implications!

Temporarily allowing SMBv1 makes it easier to transfer files from/to ancient Windows XP (virtual) machines.

Sometimes you need those to support hardware for which more modern drivers or support do not exist.

Read the rest of this entry »

Posted in Power User, Windows, Windows 10, Windows XP | Leave a Comment »

Chocolatey on Windows 7: “You must provide a value expression on the right-hand side of the ‘-‘ operator.”

Posted by jpluimers on 2022/06/08

One of the places explaining a more and more frequent error on Windows 7 installations is [Wayback/Archive.is] “You must provide a value expression on the right-hand side of the ‘-‘ operator.” · Issue #29 · shiftkey/chocolatey-beyondcompare:

Read the rest of this entry »

Posted in Chocolatey, CommandLine, Development, Microsoft Surface on Windows 7, Power User, PowerShell, PowerShell, Scripting, Software Development, Windows, Windows 10, Windows 7, Windows 8, Windows 8.1, Windows Server 2003, Windows Server 2003 R2, Windows Server 2008, Windows Server 2008 R2 | Leave a Comment »

PDF24 Creator – Wikipedia

Posted by jpluimers on 2022/05/30

Just in case I ever need more features than the built-in PDF creator in Windows: PDF24 Creator – Wikipedia

PDF24 is free for commercial use and offers these features that the Windows built-in PDF support lacks:

  • Merge multiple PDF into one file
  • Rotating, extracting, inserting pages
  • Integrated preview for PDF editing
  • PDF encryption, decryption and signing
  • Change PDF information (author, title, etc.)
  • Compress and shrink PDF files
  • Add a watermark or stamp a PDF file
  • Combine pages with a digital paper
  • Convert to and from PDF
  • Multiple PDF printers for different purposes since 7.7.0
  • Full featured and lightweight PDF reader since version 8.7.0
  • Tesseract OCR engine since version 8.8.0
  • Blackening of PDF files since version 10.0.0

Via [Wayback/Archive.is] Software-update: doPDF 10.8.127 – Computer – Downloads – Tweakers (which mentions it does not need GhostScript)

–jeroen

Posted in PDF, Power User, Windows, Windows 10 | Leave a Comment »

Windows: shutdown or reboot while preserving most of the running apps has been possible since…

Posted by jpluimers on 2022/05/26

Vista!

Shutting down or rebooting Windows allowing existing applications to reopen

Windows Vista introduced the /g switch in shutdown.exe and was unchanged in Windows 7:

    /g         Shutdown and restart the computer. After the system is
               rebooted, restart any registered applications.

I never noticed it until Windows 10 which began actively use it when applying system updates: then suddenly many of the previously running applications would reopen during startup.

Read the rest of this entry »

Posted in Power User, Windows, Windows 10, Windows 7, Windows 8, Windows 8.1, Windows Server 2008, Windows Server 2008 R2, Windows Server 2012, Windows Server 2012 R2, Windows Server 2016, Windows Vista, Windows XP | Leave a Comment »

Windows 8.1: default Windows Explorer to open “This PC” instead of “Libraries” without duplicating the taskbar icon

Posted by jpluimers on 2022/05/20

Every now and then you revisit old Windows versions. It seems a fact of life.

If course those lack more recent features, one of which is the default View with which Windows Explorer starts.

In Windows 10 you can switch it between “This PC” and “Quick Access”. Not so with Windows 8.1.

Read the rest of this entry »

Posted in Power User, Windows, Windows 10, Windows 8.1 | Leave a Comment »

Cleaning up Google Drive (for instance when a rogue supplier decides to fill your Windows Documents folder) and preventing TomTom HOME to use too much information

Posted by jpluimers on 2022/04/12

The below links helped me clean the Google Drive of a friend that grew way too large because TomTom HOME decided to put 100 gigabyte of data in the Documents folder instead of the local AppData folder (yup, this is a follow-up of Windows applications: storing your data in the correct place (Roaming, Local, LocalLow, not Documents)).

The trick with extensions to exclude is you have to add exclusions before syncing. Which is a kind of catch-22 or chicken and egg problem.

In case of the friend I helped we made a backup of the TomTom HOME data, then applied the exclusions and restored the data.

For TomTom HOME in order not to fill your Google Drive, but still allow backing up your Documents folder, these are extensions you might want to exclude (roughly in descending order of space) where you have to mind not storing any of these extensions in other subfolders of your Documents folder.:

  • .zip
  • .cab
  • .toc
  • .tmp
  • .meta
  • .sat
  • .tlv
  • .ttd
  • .dat
  • .vif
  • .chk
  • .bin
  • .rex
  • .lde
  • .gpr
  • .dbl
  • .so
  • .ov2

The problem with this? Google Backup and Sync does not allow that many exclusion extensions.

–jeroen

Posted in Google, GoogleBackupAndSync, GoogleDrive, Power User, Windows, Windows 10 | Leave a Comment »

Wow, the Windows 3.x winfile.exe File Manager still lives on!

Posted by jpluimers on 2022/04/01

By sheer luck, Jen Gentleman pointed out that winfile.exe still lives on:

The source is at [Wayback/Archive.is] microsoft/winfile: Original Windows File Manager (winfile) with enhancements, and it looks exactly like the Windows 3.x through Windows NT 4.0 days.

Read the rest of this entry »

Posted in Apri1st, Fun, Power User, Windows, Windows 10, Windows 3.11, Windows 7, Windows 8, Windows 8.1, Windows NT | Leave a Comment »