I don't have any references (e.g., Conway-Sloane) in front of me, so this will be rather basic.

For all non-negative integers $n$, the set of even lattices $L$ satisfying $(2\mathbb{Z})^n \subseteq L \subseteq (\frac12 \mathbb{Z})^n$ is nonempty (and in particular contains $(2\mathbb{Z})^n$). Also, note that the second containment follows automatically from the first by the integrality of the inner product. There is a natural bijection between such lattices and the quotients $L/(2\mathbb{Z})^n$, which are subgroups of $(\frac12 \mathbb{Z}/2\mathbb{Z})^n$ such that the induced $\frac14 \mathbb{Z}/4\mathbb{Z}$-valued quadratic form takes even integral values. You can think of the quotient group as a $\mathbb{Z}/4\mathbb{Z}$-code, so this is one possible correspondence between lattices and codes.

The even lattice $L$ is unimodular if and only if the quotient has order $2^n$, and it is well-known that this can only happen when $n$ is a multiple of 8. You can think of this as a self-duality condition on the code, but I would hesitate to describe non-self-dual examples as "trivial". At any rate, for each non-negative integer $k$, the lattice $II_{8k,0}$ is a standard example of an even unimodular lattice that arises from this construction. The codewords are those elements of $(\frac12 \mathbb{Z}/2\mathbb{Z})^{8k}$ whose components are either all integers or all half-integers, and whose sum is even. When $k=1$, you get $E_8$.

There is a different way to make a lattice from a binary code, using the quotient $(\frac{1}{\sqrt2}\mathbb{Z})^n/(\sqrt{2}\mathbb{Z})^n$, which is isomorphic to $(\mathbb{Z}/2\mathbb{Z})^n$. One obtains a bijection between integral lattices $L$ satisfying $(\sqrt{2}\mathbb{Z})^n \subseteq L \subseteq (\frac{1}{\sqrt2}\mathbb{Z})^n$ and codes in $(\mathbb{Z}/2\mathbb{Z})^n$ such that every pair of codewords has even inner product. Evenness of the lattice then corresponds to the "doubly even" condition (namely, that every codeword has weight a multiple of 4).

As I understand it, the construction of the Leech lattice from the binary Golay code is a bit more complicated than the methods I outlined above. See Wikipedia for details.

I am not an expert in framed VOAs, but my impression is that such an object is built up from tensor products of the Virasoro minimal model $L(\frac12, 0)$ and its (twisted) modules using a code, not by constructing a vertex operator algebra corresponding to a lattice built from a code.

Sphere Packings, Lattices and Groups(by Conway and Sloane) give a lot of information on how to construct lattices from codes. $\endgroup$ – Henry Cohn May 6 '11 at 0:44