Gracias por sus respuestas, pues se soluciono casi como lo dice Peterpay, para responder a los post anteriores,
1. La ruta si existe porque yo mismo la copie.
2. El SO es Windows XP y Windows Vista.
la función luego de arreglarla quedo así:
Código Funció:
Ver originalDim ruta As String =[COLOR="Red"] Enviroment.CurrentDirectory[/COLOR] + "\imagenes\"
ruta = ruta.ToString + nombre.ToString() + ".png"
Dim imagen As Bitmap
If File.Exists(ruta) = True Then
Dim img As New DirectoryInfo(ruta)
imagen = New Bitmap(ruta)
Else
imagen = Nothing
End If
Return imagen
y así toma siempre el directorio donde esta el ejecutable mas la carpeta imagenes.
Saludos.