Powinieneś zadzwonić ponownie
reader = com.ExecuteReader
Po:
com = New MySqlCommand("SELECT id FROM accounts WHERE pword = '" & txtpword.Text & "' AND uname='" & txtuname.Text & "'", con)
Właśnie sprawdziłeś, że ma wiersze wcześniej i nie zmieniłeś tego.