In a concrete category, an injective hull of an object $A$ is an extension $A \stackrel{m}{\longrightarrow} B$ of $A$ such that $B$ is injective and $m$ is an essential embedding. It is the dual concept to projective cover.
In general, there is no way of making the assignment of the injective hull to an object into a functor such that there is a natural transformation between the identity functor and that functor.
Given a class $\mathcal{E}$ of objects in a category, an $\mathcal{E}$-hull (or $\mathcal{E}$-envelope) of an object $A$ is a map $h\colon A\longrightarrow E$ such that the following two conditions hold:
Any map $k\colon A\longrightarrow E'$ to an object in $\mathcal{E}$ factors through $h$ via some map $f: E\longrightarrow E'$.
Whenever a map $f\colon E\longrightarrow E$ satisfies $f\circ h = h$ then it must be an automorphism.
On the other hand, given a class $\mathcal{H}$ of morphisms in a category, an $\mathcal{H}$-injective hull of an object $A$ is a map $h:A\to E$ in $\mathcal{H}$ such that:
$E$ is a $\mathcal{H}$-injective object and
$h$ is $\mathcal{H}$-essential, i.e. if $k\circ h \in \mathcal{H}$ then $k\in\mathcal{H}$.
projective object, projective presentation, projective cover, projective resolution
injective object, injective presentation, injective envelope, injective resolution
flat object, flat resolution