oh, just a couple of things.
First, that wasn't the actual code. I used Selece Case, not If block in the Module:

Public Sub Main()
If App.PrevInstance = True Then End
Dim strArguments As String
Dim hWndPreview As Long
strArguments = Trim(Command$)
Select Case Left(strArguments, 2)
Case "/s"
frmMain.Show
Case "/p"
hWndPreview = CLng(Trim(Right$(strArguments, Len(strArguments) - 2)))
Call SetParent(frmMain.hWnd, hWndPreview)
frmMain.Show
Case "/c"
frmDirectory.Show
End Select
End Sub
=======================================================

Second, i tested this also by replacing the screensaver in Case "/p" with just a blank form with no code whatsoever and still get the same results.