You aren't adding a password the first time, which is probably what triggers the error message. You can pass param arrays into the AddNew method, which is what you need to do to add both fields and their values at once. That should cure the error message and allow you to use AddNew properly. Here's what Help says:
<hr>recordset.AddNew FieldList, ValuesThe alternative is something like this:
FieldList Optional. A single name, or an array of names or ordinal positions of the fields in the new record.
Values Optional. A single value, or an array of values for the fields in the new record. <font color=red>If Fields is an array, Values must also be an array with the same number of members; otherwise, an error occurs.</font color=red> The order of field names must match the order of field values in each array.<hr>
m_recLogin!SOID = txtAlias
m_recLogin!Password = txtPassword2
Either method will work, and I usually use the latter because it's easier to read and debug.