Use SET PATH Command, here a sample of how can you do it:
CD (JUSTPATH(SYS(16)))
lcPath = CURDIR()
lcPathForm = lcPath+"Forms\"
lcPathLibs = lcPath+"Libs\"
lcPathData = lcPath+"Data\"
SET PATH TO &lcPathForm, &lcPathLibs, &lcPathData
SET CLASSLIB to MainClass ADDITIVE
DO FORM Main
About your second question, you can't control Toolbar because there's an SCOPE issue, the oToolBars seems like an LOCAL variable and only Start.prg can "see it". You can avoid this just declaring oToolBar as PUBLIC.
>In the start.prg of my program I have the following code.
>DO FORM CURDIR()+ "Forms\Main.SCX"
>SET CLASSLIB TO CURDIR() + "Libs\MainClass" ADDITIVE
>oToolbar = CREATEOBJECT("Toolbar1")
>oToolbar.Show
>oToolbar.Dock(0)
>READ Events
>Question 1. Is there a way that I can remove the CURDIR() from the code and prevent the program from crashing? Do I need to setup the path name somewhere to prevent this from happening?
>Question 2. In the main form (Main.Scx), why can't I control the oToolbar in the init() event? Visual FoxPro is telling it does not exist, Why? All I want to do is disable two buttons initially.
>Thanks in Advance.