Yes you can, and if you don't want the batch file shown at all use VBS to launch it - or even better use VBS to perform the tasks of your batch file. Example VBS code to run a custom program hidden:
CODE
Option Explicit
On Error Resume Next
If Wscript.Arguments.Count<>1 Then WScript.Quit(0)
Dim WshShell,p
p=Left(WScript.ScriptFullName,Len(WScript.ScriptFullName)-_
Len(WScript.ScriptName))
Set WshShell=WScript.CreateObject("WScript.Shell")
WshShell.Run p&Wscript.Arguments(0),0
Set WshShell=Nothing
WScript.Quit(1)
Usage: WSCRIPT SCRIPTNAME.VBS BATCHFILE.CMD
Requirements: Batch file in same directory as script.
But yes, you can use .BAT/.CMD in the same way as .EXE or .COM from RunOnceEx.cmd.