This is now an obsolete topic. Recent changes in Construct Classic have solved this problem. Perfect window scaling is possible by simply changing the client width and height.
For your convenience, this is copy/pasted in the .cap
The problem with 1:1 window resizing is that DisplayWidth/Height return the actual resolution of the window while Window.Width/Height return the resolution of the window + the window handle (You know, the border and the thing with the x on it!).
Notice at the bottom of the layout the fact that the window size is NOT a multiple of 128x128 like it should be. This is how Window.Width/Height measures it. This includes the windows handle/border.
To use the Window: Set Width action, we must determine the width and the height of the border and add it to the multiplied DisplayWidth/Height AFTER we multiply it to scale the screen. If we don't, the game is slight stretched out of proportion. You probably won't notice this on a regular game, but on a retro/pixel game, it's ever-so-obvious that something is wrong.
Also, as a limited time offer, I show you how to properly center the screen after a window resize! Megaman included for example, and for awesomeness.
Good luck with your games!
Love,
greyspot
Created in Construct 0.99.91.
Opps, updated the .cap
Combined silly things like "set x" and "set y" to "set position." Same with width and height to size.