Zu 1.: Beides kann genauso geknackt werden, aber die Inifiles kommen noch aus 16-Bit-Zeiten, seit
Win32 gibts die Registry, also nimm die
Zu 2.: Ich blende immer alles auf dem MainForm aus (Visible := False), zeige dann den Passwortdialog an (vom MainForm aus, also in Form1.OnShow). Dieser Dialog muss natürlich modal angezeigt werden (ShowModal anstatt Show verwenden). Ist das Passwort richtig, dann alle Visible auf True, andernfalls Form1.Close