#COMPILE EXE "exe2unix.exe" #DIM ALL #REGISTER NONE #RESOURCE "exe2unix.pbr" MACRO MyMsgBox(hd,m,t,st) = MessageBox(hd,m,t,st) #INCLUDE ONCE "Win32Api.inc" #INCLUDE ONCE "inc/exe2unix.inc" '-------------------------------------------------------------------------------- FUNCTION PBMAIN LOCAL src AS STRING LOCAL lRes AS LONG ' Create exe icon in Unix dock and Unix file explorer Me2Unix 0, 1 ' askConfirmation=%FALSE, showInAppMenu=%TRUE ' Are we under Linux? IF NOT IsOnUnix() THEN ?"This program must be run under Unix.", _ %MB_ICONWARNING, EXE.NAME$ EXIT FUNCTION END IF ' Select executable to add to Linux Apps (if not provided as argument) IF RIGHT$(LCASE$(TRIM$(COMMAND$,$DQ)), 4) = ".exe" THEN src = COMMAND$ ELSE DISPLAY OPENFILE 0, , , "Select file...", "", _ CHR$("Executable (*.exe)", 0, "*.exe", 0), _ "", "", %OFN_FILEMUSTEXIST OR %OFN_SHOWHELP OR _ %OFN_NONETWORKBUTTON OR %OFN_ENABLESIZING TO src IF src = "" THEN EXIT FUNCTION ' canceled by user END IF ' Ask user confirmation IF Exe2UnixConfirm(src) = %IDNO THEN EXIT FUNCTION ' Register! lRes = Exe2Unix(src, %SW_SHOW) ' %SW_SHOW = interactive mode, ask user confirmation IF lRes > 0 THEN ?PATHNAME$(NAME, src) + " successfully registered as a Linux App!" _ ,%MB_ICONINFORMATION, EXE.NAME$ END IF END FUNCTION '--------------------------------------------------------------------------------