I think you can find answers on google easily, like
https://wordpress.org/support/topic/forcing-http-to-https-and-non-www-to-www/
The last post tells you what to do, add this to top of your .htaccess (found on FTP in root of your Wordpress site):
RewriteEngine on
RewriteCond %{HTTPS} !on [OR]
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule (.*) https://www.example.com%{REQUEST_URI} [L,R=301]
(NOTE: Make sure you change www.example.com to your domain.)
Also, are you certain any of the changes you made to .htaccess have changed any outcomes? Some hosting companies require you to push changes to .htaccess by pressing a button in the backend. Or else changes to the .htaccess have no effect.
Update
Ok, that it is running on Windows server is very relevant to mention here.
.htaccess does not work on Windows server.
Can you try what is mentioned here?:
IIS Redirect non-www to www AND http to https
So put this in web.config
: (dont forget to replace zzz.com
with your website)
<rule name="Force WWW and SSL" enabled="true" stopProcessing="true">
<match url="(.*)" />
<conditions logicalGrouping="MatchAny">
<add input="{HTTP_HOST}" pattern="^[^www]" />
<add input="{HTTPS}" pattern="off" />
</conditions>
<action type="Redirect" url="https://www.zzz.com/{R:1}" appendQueryString="true" redirectType="Permanent" />
</rule>