Related, have a look at the Sysinternals tools [1], particularly Process Explorer [2], a powerful "Task Manager" replacement.
Sysinternals used to be Mark Russinovich's external company that provided expert Windows debugging. His blog was impressive, and my little finger tells me he knew more about Windows internals than Microsoft did.
So Microsoft acquihired Sysinternals, and his tools continue to be supported :)
And to be complete, add Windows System Control Center[0] — a handy tool to install, update, organize and launch both Sysinternals and NirSoft utilities.
Yes. Whenever you need to do something it’s always good to check nirsoft and SysInternals. It may be there already
They really should ship Windows with Notepad++, SysInternals and NirSoft. It would make it a much nicer experience especially in machines where you can’t install stuff due to regulation.
VSCode is gigantic and complicated and only really useful to developers anyway. It does not really overlap with notepad. Notepad++ is almost simple enough to replace notepad. (Personally it's still too complex to replace notepad for me but I know it does for some people.)
Maybe get a better computer? (not trying to be glib, seriously I wonder what are you running on). I run on a 2017 Mac Book Pro and it is very very fast for me.
Also, personal opinion: VS Code gets a big +1 from me due to it recently adding remote development capabilities (eg connect to host over SSH, do dev/compile stuff there).
>[performance problem involving software having ten million layers of abstraction and running a full web browser engine (read: second OS) just to type some characters]
>Maybe get a better computer?
thanks i almost forgot i was on HN for a second there
Meh I think VScode is a bit overcomplicated and heavy compared to notepad++ to be used as a default for every machine. I don't find VScode that compelling until you really tinker with it a bit as well which makes me feel like it's better suited as an installable program.
PowerShell ISE is pretty sluggish and honestly not very good and gets included on every machine though.
Off the top of my head process hacker lets you look up opened process handles, procexp doesnt let you list them, only do a global search for particular one. You need a separate command line handle.exe.
I don't understand the question, likely because I'm not a programmer. Do you mean handle types it represents, or does it show handles from sub-processes? I've found the content to be the same as I get from handle.exe from Russinovich. So using handle -s to get a summary, my system shows this - I would think all would be represented in Procexp:
There are more graphs per process and the interface is customizable. It's easier to supervise the activity by using the tabs on the main window to see all ongoing Disk, Network, or Service jobs. Process properties show tokens, much better overall/accumulated stats view for a process, process modules and heap regions, and so on. You can set it to permanently remember process priorities and automatically apply them. The "System Information" graph is much more informative in that you can mouse over the spikes and see which process is causing them. The better visibility of I/O traffic makes it simple to associate, for example, the internal handle for the mouse object, since my mouse requires intercepting/sampling to use all 7 buttons. And finally, the filter field is in the top-right of the main window, which makes it a lot easier to get to.
I'm sure some of this is accessible somewhere in the internals of ProcExp but I've greatly enjoyed Process Hacker. My biggest gripe is that I press X and it actually closes itself so the graphs hadn't been capturing when I go back to look at it. :)
Process Hacker allows you to execute program as user of any specified process, ex: create cmd.exe as IIS APPPOOL\app. Very useful for debugging access issues. I didn't find any other method to do this.
> Process Hacker allows you to execute program as user of any specified process, ex: create cmd.exe as IIS APPPOOL\app. Very useful for debugging access issues. I didn't find any other method to do this.
Sysinternals PsExec will. It's a tool often used to run a process interactively as System, so you should be able to do the same.
> he knew more about Windows internals than Microsoft did.
> So Microsoft acquihired Sysinternals, and his tools continue to be supported :)
That is not the reason MS hired him. He used to openly challenge and piss them off [0]. Just like what Steve Jobs did to Disney CEO at the time. It's a very slippery slope.
Many years back I started a project to wikify the content from Inside Windows (for non-commercial purposes).
I asked Russinovich for his blessing and he said yes with no hesitation. I never did get too far with the project but I thought that was pretty cool of him.
That's not as convenient as being able to do it without syncing with the keyboard and with anything selected --- if you do it on a file, it will open in the directory the file is in.
* WinDirStat -> WizTree . Same idea as WDS/Space Monger but uses Everything-style disk tree reading to be much faster scanning
* Licecap -> Gifcam . Similar functionality, slightly more modern UI
* Greenshot -> Jing . Mostly because I'm used to Jing and have it mapped to Ctrl + Print Screen
* Open Hardware Monitor . My Sandy Bridge laptop likes to go into Jet Engine mode and this gives me details as to what the hardware is doing. Combined with procexp and I have a clear view that svchost.exe has gotten away from itself again and its time for a reboot
Seconding ShareX. This is an extremely powerful tool, but only if you want it to be. I was using it as a basic lightweight snipping tool for over a year before diving deeper into it's macro, automatic uploading, screen recording, and screenshot organization tools. Among it's other features is built in QR and OCR tools. Cool stuff!
If you like WinDirStat, try WizTree sometime. Not open source but free from antibody-software. Many times faster in operation that WinDirStat.
For file renaming lately ReNamer Lite by den4b has been great. It seems to have all the power of other rename tools with a GUI that makes it very easy to accomplish what you are trying to do.
DexPot[0] for creating hotkey driven virtual desktops (similar to how i3 launches and switches between them)
Ditto[1] for multiple clipboards (searchable and has multiple paste types, much better than what comes with Windows 10)
Keypirinha[2] for launching apps and folders with fuzzing searching (IMO much better than what comes with Windows 10)
AutoHotKey[3] for remapping global hotkeys and filling in gaps for specific things you want to do
wsltty[4] for a low input latency rock solid terminal (best paired with tmux for tabs / splits and buffer searches)
There's in depth blog posts and videos on how all of these work in the link at the start of this comment. I've been using Windows as a primary dev environment for ~20 years and the last half of that has been using it for Linux based development (initially with VMs but now with WSL and Docker).
Thanks for sharing; I particularly like the looks of FancyZones - it'll really save me time arranging my Terminal windows etc, and also assist setting up standard layouts of working.
FancyZones looks like a godsend for those with ultrawide monitors. Not being able to effectively divide up the space was always a drawback compared with just having two normal sized monitors, this could solve that issue.
I agree. I do have an ultrawide monitor and a secondary monitor and it seems that FancyZones doesn't (yet?) have support for multiple monitors. It looks nice and is useful but I'll be sticking to GridMove for window management for the time being.
The FancyZones backlog page [1] links to a bunch of issues from a project that no longer exists [2]. However, the same org has a new fork of the Microsoft repo called powertoys-staging [3].
Anyone have insight into who Janea Systems [4] is or the history of this project?
I think it will be very useful. Even just being able to retrieve the Win + arrow keys from the bizarre Windows Snap 'feature' will be great.
It's not quite ready for daily use yet. Behaviour across multiple monitors I've found unpredictable, the layout editor doesn't really work, and it does some peculiar things (like grabbing hold of the task bar Search window and trying to tile it, fortunately without resizing).
[edit: it also substantially slows switching between virtual desktop on my machine]
I’ve been using GridMove [1] for last couple of years and it’s been great. I can quickly move a window to a specific location using a keyboard shortcut, fix windows Windows moved when I attached displays or came back from sleep.
FancyZones does look more polished but I wonder if it has multiple monitor support.
Not on Windows at the moment, but I agree that it looks really useful! I wonder if it combines well with http://taekwindow.net/ so that dragging windows around becomes a mere Alt + drag operation.
(I haven't used Taekwindow since XP so I'm not sure if it still works with modern incarnations)
As someone coming from macOS, the one feature that I miss most on Windows is applications remembering their old positions when plugged into multiple displays. When I first saw this happen on macOS, I thought it was some magic. Now on Windows, I have to constantly drag each window back into its own display every time I plug in/out from displays.
Window positions? I'd be happy if icons would stay in one place as i plug/unplug displays! To be honest MacOS and linux are the only current consumer OSs that have multi-display handled. And of them, only MacOS properly handles multi-display setups with differing DPIs.
I question that last statement. Not a Mac person myself, but I've noticed that when one of my coworkers plugs their MacBook into the TV in the conference room their resolution becomes so high that they can't see anything.
Some among them know how to get it right, but the majority just open chrome before plugging in and zoom to 500% afterwards.
Somebody pointed out that the text on the TV is actually the same size as the text used to be on the Mac--it's just that the TV is mounted too far away from the people for that scale to be the correct one. So I think maybe the Mac and the TV have successfully conspired to achieve some kind of real-space equivalence on the TV (though the Mac is now unusable by whoever is presenting since the fonts are all three times too small).
My point is less technical: when a new display device appears, the computer can't know how that image is reaching users. It could be VR goggles or it could be a jumbotron in a stadium. A better design would focus making it easier for the user to tune the scale, rather than assuming that the Mac knows best.
This was one of the issues in linux-land, that EDID info about DPI cannot be trusted.
Projectors obviously have no idea about the final DPI and TVs often lie, because same board is used across a range of models. It is the TV equivalent of "To be filled by O.E.M." .
Running 3 monitors here. Mixed DPI (laptop is 4K, both external displays are 1080P). Ubuntu with Gnome running on Wayland. A few of the applications I use still don't support Wayland scaling properly (meaning they need to stay on whichever monitor they were launched, lest their zoom level get messed up) but it's getting better and all of the built-in Gnome stuff works great.
This genuinely took zero configuration on my part, besides perhaps going into the Display control panel and changing the zoom level for the 4K display.
Depends on your setup. I run a fairly custom setup without a DE and such and I just use xrandr(arandr) and saved the layouts. I haven't bothered to make anything happen automatically since I have a few different monitor setups, so I just run the scripts manually.
I use High Sierra with 3 external displays, and my windows are almost always in different places when I unplug, plug back in. All monitors are the same model (this might make a difference), but I always plug them into the same port they were connected to previously.
One hypothesis I have is the order I unplug / plug in the monitors matters.
Edit:
after some quick testing, I can't seem to reproduce any issues while just briefly leaving my monitors unplugged.
The issue I notice the most is that windows get put back on the wrong monitor. e.g. window A from monitor 1 is now on monitor 2 and window B from monitor 2 is now on monitor 1.
> All monitors are the same model (this might make a difference)
It does: your monitors are likely reporting identical EDIDs. Or, to put it another way, your monitor's manufacturer is incompetent. (Which is sadly quite common.)
Windows remembers my window locations when I plug back in. Using a Surface dock with two Dell Ultrasharps. Maybe as someone else pointed it on OSX, perhaps it's the ID the monitors are sending back to your Windows install and it doesn't know which is which because they don't have a unique identifier?
I'm on Windows 10 at work with four displays (2x 27" and 2 x 23") and Windows can't even remember the position of app windows after closing and re-opening the app immediately, don't even have to unplug and replug a display for this it to exhibit this amnesic behaviour.
Isn't it up to each program to ask for its windows to be displayed in a particular place?
(Not up to the OS to override programs and show them where it thinks you want them; “how do I save window position?” used to be a popular question for Windows dev).
I haven't used it yet myself, been sitting on my Steam account since I got it in a deal, but apparently DisplayFusion [0] has window position profiles.
DisplayFusion is a great utility. I actually paid full price and I only use it for one purpose - window management. I have a few shortcuts I set up that allow me to manipulate the active window in multiple ways. I've set this up 2 years ago and I've been using it at home and at work for all this time. I can't say enough good things about the app.
I am curious though, why do people dislike Windows Store? It is much like mobile stores, provides automatic updates and sandboxes apps (where possible).
I do believe you've answered your own question, haha.
The main reason (in my head) is I do not want to contribute to this non-local, always-connected, environment that's constantly etching away at users' privacy.
As for the mobile store aspect, I don't think the typical power user really enjoys the mobile store. I'm always having to disable auto-updates because developers will make changes that I do not want, push malicious updates, or an update simply breaks the application for me.
Additionally, Microsoft has a habit of building and abandoning these types of programs.
Oh, and the last thing-- I'm not even sure if I can use the store anymore after running those telemetry killers for Win10.
As I type, I realize I could probably write a paper on why I dislike the app store. In fact, I might. I understand the store probably helps your app get seen, but an app targeting powerusers seems best suited elsewhere. However now that there is a free version, you're in the only market you have left - people who don
t know there's a free version or cant figure out how to find/use/install it and are willing to pay.
To answer your curiosity, I use your wm and I love it, but:
It means I have to sign in to windows: I have to deal with it nagging me to change my standard logon to a microsoft logon. I then have to worry about all the other apps and their permissions, privacy implications now and in the future.
I have to give my credit card details to microsoft.
I can't easily take the software with me if I need to use another machine/laptop/tablet etc without having to, again, sign into windows in some way and have all of the above congnitave overhead *n machines.
Hell even if I make another local user account for testing or whatever I can't even use your software as I again have to sign into windows even though its working for my main logon.
It all adds up to another thing that needs managing/thinking about, which pretty much takes the convienience of (your software, in this case) away.
If you wanted to make it restrictive and painful for your users, you have succeeded!
Please don't underestimate the privacy implications as once you have signed into the app store, you're signed into all the other apps too. I would much prefer to have a regular exe with a serial.
The credit card being in Microsoft's hands is just another surface that my card is exposed to, perhaps I'm being over zealous worrying on that front.
It's extremely fast and intuitive to use, middle button to drag windows to zones (or whatever you configure). It comes with some decent layout templates.
However the template system is in XAML which is fine if you're au fait with that but can be a bit fiddly to get what you want.
The only other issue I have with it is that the full version - which is definately worth the money - is distributed via the windows store which forces you to have an account with Microsoft. Overall though, excellent.
I'd give it a try if I still developed on Windows. I find it amazing no one has made a good tiling window manager for Windows yet. On Linux I use i3 and love it. Back in the day I used that auto-hotkey script that did window tiling. It was okay, but kinda buggy.
Also recommended: Everything [1], a stupid fast file search engine for Windows. The initial index build takes less than a second for 100k files (no idea how it does that). Much better than what Windows provides natively.
If anyone ever used xtree gold back in the day - it's the exact same thing, but works with modern windows. Because it's all keyboard based and no mouse, all file operations can be done quickly via muscle memory.
Also another vote for everything mentioned below. Fastest file search there is. Even if I know where something is, it's still quicker and easier to use Everything to find it.
Hah! When I saw this I thought the title was missing a (1995) on it. I remember installing the power tools as soon as they were released. I used every single one of those tools on a regular basis.
I'm glad they've revived the idea and allowed their developers to publish this repo. I hope they keep adding to it (even though I don't use Windows anymore...)
I'm glad they've revived the idea and allowed their developers to publish this repo.
I was disappointed to find out that this is not the original PowerToys, which offered far more functionality. This appears to be something else, using the same name.
Can't beleive this is from the same company that puts Candy Crush Saga and other junkware on Windows 10 "Pro" installs - and then limited the ability to have a default profile that picks up their removal with new profiles. The hoopjumping to clean up the Win 10 "Pro" mess is silly.
What enterprise is asking for all this junkware to be installed - it makes absolutely no sense for this to be on domain networks. I keep on reading that Microsoft listens "closely" to their customers - and am like - really?
I can. Have you looked at it? Its a 22.2 MB shortcut help screen and some window tiling helper, 22.2 MB of total fluff. Its a direct opposite of what a Power user would want. Original 205 KB PowerToys/Tweak UI were meant for advanced users wanting an easier access to hidden features.
The issue is you used to be able to remove apps at any time and then set that profile to be a default profile.
Once these junkware apps are provisioned once it's a much bigger pain to get them out of default profile land. In other words, you'd better boot straight into audit mode, have everything lined up right to clean this stuff up. And yes, that is Remove-AppxProvisionedPackage . How about adding Remove-AllJunk with some sane defaults?
And why have to do this? I'm the one paying per seat on these installs - and instead of solving problems I am given a bunch of problems.
"You want to remove some of the side-loaded Appx packages from your image and customize it further.
You boot into the reference computer and run one of the following PowerShell commands to remove the provisioning of the Appx package:
Remove-AppxProvisionedPackage –PackageName <PackageName>
Remove-ProvisionedAppxPackage –PackageName <PackageName>
When you run sysprep operation in this scenario, the operation may fail with the following error:
System Preparation Tool 3.14
A fatal error occurred while trying to sysprep the machine"
Sysinternals used to be Mark Russinovich's external company that provided expert Windows debugging. His blog was impressive, and my little finger tells me he knew more about Windows internals than Microsoft did.
So Microsoft acquihired Sysinternals, and his tools continue to be supported :)
[1] https://docs.microsoft.com/en-us/sysinternals/
[2] https://docs.microsoft.com/en-us/sysinternals/downloads/proc...