  Self-dual codes (Type I and Type II codes) play an important role in the
construction of even unimodular lattices, and hence in the determination of
Jacobi forms. In this paper, we construct both Type I and Type II codes (of
higher lengths) over the ring $\mathbb{Z}_{2^m}$ of integers modulo $2^m$ from
shadows of Type I codes of length $n$ over $\mathbb{Z}_{2^m}$ for each positive
integer $n;$ and obtain their complete weight enumerators. Using these results,
we also determine some Jacobi forms on the modular group $\Gamma(1) = SL(2;
\mathbb{Z}).$ Besides this, for each positive integer $n$; we also construct
self-dual codes (of higher lengths) over $\mathbb{Z}_{2^m}$ from the
generalized shadow of a self-dual code $\mathcal{C}$ of length $n$ over
$\mathbb{Z}_{2^m}$ with respect to a vector $s\in \mathbb{Z}_{2^m}^n\setminus
\mathcal{C}$ satisfying either $s\cdot s \equiv 0 (mod 2^m)$ or $s\cdot s
\equiv 2^{m-1} (mod 2^m).$
