I prefer the 1-liner for giving access:
GRANT ALL PRIVILEGES ON mydatabase.* TO 'myname'@'localhost' IDENTIFIED BY 'mypwd';
Where 'localhost' could, instead, be an IP address or hostname ('mysite.com') or certain wild cards.
Note that it is better (necessary?) for the machines in your network to have "static IPs".
Further comments on GRANT:
http://forums.mysql.com/read.php?10,562182,562356
Test it via
mysql -u root -h host.name.or.IP -p
There is probably no need to use any Port other than the default 3306.
Mixing MySQL and MSAccess -- sounds like a nightmare. I don't have any insight into such.
The connection string in C++ needs to give the hostname or IP address of the server (instead of localhost or 127.0.0.1).