I can find eigenvectors by solving
$$ (\mathbf{A}-\lambda \mathbf{I}) \, \mathbf{v} = \mathbf{0} $$
but isn't it the same as saying $$ \mathbf{v} = (\mathbf{A}-\lambda \mathbf{I})^{-1} \, \mathbf{0} $$ giving me $\mathbf{v} = \mathbf{0}$ since anything I multiply with the zero-vector is a zero-vector? I know an eigenvector cannot be a zero-vector but am I doing something wrong in the equations above?
I have just learned to use LinearSolve(A-lambda*IdentityMatrix(Rank(A)), <0,0>) in Maple but I want to know how to do it correctly.
Your mistake is assuming that, when $\lambda$ is an eigenvalue, $$(A-\lambda I)^{-1}$$
exists. The inverse does not exist precisely because $\lambda$ is an eigenvalue. Therefore, the equation $$(A-\lambda I) x = 0$$ has more than one solution, and eigenvectors are nontrivial solutions of the equation. In other words, when finding eigenvectors, you are effectivelly looking for the nullspace of the matrix.
This is different from finding a solution of a linear equation, because there is more than one solution, while solving linear equations with an algorithm usually assumes you are looking for one solution, knowing that the solution is unique. Thus, asking a programm to solve $Ax=0$ will simply return $0$ since $A0=0$ is true.
I don't know maple, but usually, if $B$ is non-invertible, there is a separate function to find the nullspace of $B$.