Amikor lefordítunk egy Visual Basic projektet, sok dolgot beállíthatunk. A Make Program.exe pont kiválasztásával megjeleníthetjük a Make Project ablakot, aminek Options gombjára való kattintással lehetőségünk nyílik az opciók megváltoztatására. Az Options-ra kattintva megjelenik a Project Properties ablak. Ha a Compile lapra lépünk, több opció közül választhatunk, a két legfontosabb azonban a Compile to P-code és a Compile to Native Code.
Compile to P-code: a P a pszeudo (hamis, ál) szó rövidítése, magával az opcióval pedig azt tudjuk beállítani, hogy miután lefordítottuk a projektünket, csak bizonyos mértékig lefordított állományt kapunk a projekt forráskódjából. Ezt előfordított állománynak hívják. Ezt, a forrás és a futtaható program közti átmenetet pszeudokódnak nevezzük. Végrehajtáskor automatikusan továbbfordul, és így fog létrejönni a ténylegesen futtatható programkód. A Visual Basic 5. verziójának megjelenéséig az egyetlen fordítási típus a P-kód volt.
Compile to Native Code: használatával úgynevezett natív kódot készítünk. Ez esetben, ha elvégezzük a projekt forráskódjának fordítását, további fordítást nem kell a program végrehajtása során végezni, mert a művelet elvégzi a forráskód teljes lefordítását.
A két fordítási mód közti legfontosabb különbség, hogy a P-kóddal készített program lassabb lesz, mint a natív kóddal készült program. Ennek oka az, hogy a P-kód használatával készült programnál futtatás közben is szükség van fordításra. A Visual Basic régebbi változatainak valószínűleg ez volt a legnagyobb hibájuk, ugyanis a programjaik mindig kicsit lassabbak voltak a más programnyelveken készült alkalmazások, melyek natív kódot készítette. Viszont tény, hogy a P-kóddal készült programok végrehajtható állományának mérete kisebb, mint a natív kóddal készült alkalmazások. De mivel napjainkban a háttértárolók kapacitását kedvünk szerint növelhetjük, nincs rá ok, hogy a P-kódot használjuk a natív kód helyett.
A natív kód használatával további lehetőségek közül is választhatunk. A legfontosabbakat kiemelve:
- Optimize for Fast Code: a lehető leggyorsabbra optimalizálja a programot, még akkor is, ha a gyorsaság esetleg a
futtatható fájl mérete megváltozásának rovására történik.
- Optimize for Small Code: a fordítást úgy végzi, hogy az EXE fájl mérete a lehető legkisebb legyen.
Általában ez a program végrehajtási sebességét lelassítja.
- Favor Pentium Pro: a végrehajtandó állomány teljes mértékben egy Pentium Pro rendszerre optimalizálódik.
Más rendszerekben viszont lassabb lesz a program futása.