=D opcion 2 !!! te ganaste un dolor de cabeza!!!!
Bien mi preferida, primero que nada, las APIs que vayas a utilizar en codigo las tenes que declacrar en un type library, Hay varios tutoriales y ejemplos por ahi de como crearlas si queres pego el source de una que utilizo para inyeccion. Obviamente hay que compilarla, si tenes Visual Studio tenes que tener midl.exe por ahi en tu disco.
Inject.odl source
http://pastebin.com.ar/5567 Una vez que tenes el tlb creado lo agregas a las referencias y eso tendria que resolver el tema de las APIs, con respecto al codigo, muchas cosas no te van a funcionar, como ser los & para concatenar y Mid y esas cosas, por lo que vi en el codigo que tenes son simplemente unos if y cosas asi que no te van a dar mayores problemas.
Una aclaracion, para debuguear eso no uses un log, usa Outputdebugstring y el programa DebugView.