RbBFBlokProjPSIVStrn2007.02 ACnmStrnAChpStrnACsvStrnVer1Strn1 Ver2Strn0 Ver3Strn0 RelsStrn0 NnRlStrn0 RegnStrnSVerStrnLVerStrnIVerStrnaiviInt DVewInt m{×ÿprTpInt DLanInt CLanInt DEncInt BflgInt IconGrupÅEndGInt ÅMacCStrnBMacStrnMy Application (Classic)BCarStrnMy Application BCMOStrnMy Application BunIStrnBSizInt @BMSzInt BSzSStrn4096BMSSStrn2048MDIcStrnBWinStrnMy Application.exe BMDIInt WcmNStrnWpNmStrnWiNmStrnBL86Strn MyApplication PadnPadnˆ********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************BlokpObjcWÿNameStrnApp ContInt paswStrnmoddStrn 3256559942 bClsInt SuprStrn Application bNtrInt bApOInt CompStrnPDefGrup$ÆnameStrnMenuBar PValInt vhOÿEndGInt ÆVwBhGrupÇEndGInt ÇCnstGrupäÈEncoInt nameStrnkFileQuitShortcut typeInt defnStrnflagInt CInsGrup0ÉpltfInt langInt defnStrnCmd+Q EndGInt ÉCInsGrup0ÊpltfInt langInt defnStrnCtrl+Q EndGInt ÊEndGInt ÈCnstGrupœËEncoInt nameStrn kFileQuit typeInt defnStrn&Quit flagInt CInsGrup0ÌpltfInt langInt defnStrnE&xit EndGInt ÌEndGInt ËCnstGrupäÍEncoInt nameStrn kEditClear typeInt defnStrn&Delete flagInt CInsGrup0ÎpltfInt langInt defnStrn&Delete EndGInt ÎCInsGrup0ÏpltfInt langInt defnStrn&Delete EndGInt ÏEndGInt ÍPadnPadnH************************************************************************BlokpVewm{×ÿ@NameStrnWindow1 ContInt paswStrnmoddStrn 3256565262 bClsInt SuprStrnWindow bNtrInt CompStrnHInsGrup $ÐnameStrnOpenCompStrnVsblInt sorcGrupàÑEncoInt srclStrn Sub Open() srclStrndim doWait as Boolean = truesrclStrnsrclStrn9// Check to see if we're a restart run of the application srclStrn7if InStr( System.CommandLine, "/restarted: " ) > 0 then srclStrn8// We are, so grab the path to the restart recovery filesrclStrnXdim f as FolderItem = GetFolderItem( NthField( System.CommandLine, "/restarted: ", 2 ) )srclStrnif f <> nil thensrclStrn,dim ts as TextInputStream = f.OpenAsTextFilesrclStrnif ts <> nil then srclStrn// Recover our data srclStrn,EditField1.Text = "Recovered: " + ts.ReadAllsrclStrnsrclStrn// No need to wait for this run srclStrndoWait = false srclStrnsrclStrn&// Now we can delete the recovery file srclStrnts.ClosesrclStrnf.DeletesrclStrnend if srclStrnend if srclStrnend if srclStrnsrclStrn?// Make our app recovery file name. We do it this way (instead srclStrn>// of just using GetTemporaryFolderItem) to ensure that the OS srclStrn@// doesn't delete the folder item when the application closes. srclStrnB// Otherwise we might make a recovery file which is deleted by the srclStrnD// OS before we can recover from it. We'll delete the recovery filesrclStrn // ourselvessrclStrn0dim name as String = GetTemporaryFolderItem.NamesrclStrn0mAppRecoveryPath = TemporaryFolder.Child( name )srclStrnsrclStrn„Declare Sub RegisterApplicationRecoveryCallback Lib "Kernel32" ( callback as Ptr, param as UInt32, ping as UInt32, flags as UInt32 )srclStrn]Declare Sub RegisterApplicationRestart Lib "Kernel32" ( cmdLine as WString, flags as UInt32 ) srclStrnsrclStrn!// Register our recovery callback srclStrnJRegisterApplicationRecoveryCallback( AddressOf RecoveryCallback, 0, 0, 0 ) srclStrnsrclStrnE// Register that we want to be restarted, along with the command line srclStrnORegisterApplicationRestart( "/restarted: " + mAppRecoveryPath.AbsolutePath, 0 ) srclStrnsrclStrnA// Fake a wait. The application must run for at least a minute, srclStrn;// otherwise the OS won't bother restarting the application srclStrnif doWait then srclStrnApp.SleepCurrentThread( 64000 ) srclStrnend if srclStrnEnd Sub EndGInt ÑEndGInt ÐHInsGrupôÒnameStrnClose CompStrnVsblInt sorcGrup¬ÓEncoInt srclStrn Sub Close() srclStrn:Declare Sub UnregisterApplicationRestart Lib "Kernel32" () srclStrnUnregisterApplicationRestartsrclStrnEnd Sub EndGInt ÓEndGInt ÒMethGrupðÔnameStrnRecoveryCallbackCompStrnVsblInt sorcGrup@ÕEncoInt srclStrn< Shared Function RecoveryCallback(param as UInt32) As UInt32srclStrn)// This callback method must be a StdCall srclStrn$#pragma X86CallingConvention StdCallsrclStrnsrclStrnWDeclare Sub ApplicationRecoveryInProgress Lib "Kernel32" ( ByRef cancelled as Boolean ) srclStrnMDeclare Sub ApplicationRecoveryFinished Lib "Kernel32" ( success as Boolean ) srclStrnsrclStrn4// Tell the OS that we're doing a recovery right nowsrclStrndim stop as Boolean srclStrn%ApplicationRecoveryInProgress( stop ) srclStrnif stop then return 0 srclStrnsrclStrn/// Find the window we want to recover data from srclStrndim wnd as Window1 srclStrn'for i as Integer = 0 to WindowCount - 1 srclStrnnameStrnFormat EncoInt PValStrnEndGInt >PDefGrup(?nameStrnEnabled PValStrnTrueEndGInt ?PDefGrup(@nameStrn BackColor PValInt ÿÿÿEndGInt @PDefGrup(AnameStrn TextColor PValInt EndGInt APDefGrup,BnameStrn UseFocusRingPValStrnTrueEndGInt BPDefGrup$CnameStrnPasswordPValStrnEndGInt CPDefGrup$DnameStrnStyled PValStrnEndGInt DPDefGrup4EnameStrnScrollbarVertical PValStrnTrueEndGInt EPDefGrup0FnameStrnScrollbarHorizontal PValStrnEndGInt FPDefGrup(GnameStrn Multiline PValStrnEndGInt GPDefGrup(HnameStrnBorder PValStrnTrueEndGInt HPDefGrup,InameStrn TabPanelIndex PValInt EndGInt IPDefGrup(JnameStrn LockBottom PValStrnEndGInt JPDefGrup(KnameStrn LockRight PValStrnEndGInt KPDefGrup$LnameStrnLockTop PValStrnEndGInt LPDefGrup$MnameStrnLockLeftPValStrnEndGInt MPDefGrup$NnameStrnHeight PValInt EndGInt NPDefGrup$OnameStrnWidth PValInt EndGInt OPDefGrup PnameStrnTop PValInt EndGInt PPDefGrup QnameStrnLeftPValInt EndGInt QPDefGrup(RnameStrn ControlOrderPValInt EndGInt RPDefGrup<SnameStrnSuper EncoInt PValStrn EditField EndGInt SPDefGrup$TnameStrnIndex PValInt €EndGInt TPDefGrup8UnameStrnNameEncoInt PValStrn EditField1 EndGInt UCBixInt EndGInt ,PadnPadnø********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************BlokpMnuvhOÿ NameStrnMenuBar1ContInt paswStrnmoddStrn 3256559942 MItmGruppVspmuInt nameStrnFileMenutextStrn&File indxInt €scutStrnmaEnInt EncoInt flagInt SuprStrnMenuItemMItmGrupÐWspmuInt nameStrnFileQuittextStrn#App.kFileQuit indxInt €scutStrn#App.kFileQuitShortcut MiSKStrn#App.kFileQuitShortcut maEnInt EncoInt flagInt SuprStrn QuitMenuItemEndGInt WEndGInt VMItmGrup<XspmuInt nameStrnEditMenutextStrn&Edit indxInt €scutStrnmaEnInt EncoInt flagInt SuprStrnMenuItemMItmGrup¬YspmuInt nameStrnEditUndotextStrn&Undo indxInt €scutStrnCmd+Z MiSKStrnZ MiMkInt maEnInt EncoInt flagInt SuprStrnMenuItemEndGInt YMItmGrup|ZspmuInt nameStrntextStrn- indxInt €scutStrnmaEnInt EncoInt flagInt SuprStrnMenuItemEndGInt ZMItmGrup¨pmuInt nameStrnEditCut textStrnCu&tindxInt €scutStrnCmd+X MiSKStrnX MiMkInt maEnInt EncoInt flagInt SuprStrnMenuItemEndGInt ItmGrup¬\spmuInt nameStrnEditCopytextStrn&Copy indxInt €scutStrnCmd+C MiSKStrnC MiMkInt maEnInt EncoInt flagInt SuprStrnMenuItemEndGInt \MItmGrup°]spmuInt nameStrn EditPaste textStrn&Paste indxInt €scutStrnCmd+V MiSKStrnV MiMkInt maEnInt EncoInt flagInt SuprStrnMenuItemEndGInt ]MItmGrup”^spmuInt nameStrn EditClear textStrn#App.kEditClear indxInt €scutStrnmaEnInt EncoInt flagInt SuprStrnMenuItemEndGInt ^MItmGrup|_spmuInt nameStrntextStrn- indxInt €scutStrnmaEnInt EncoInt flagInt SuprStrnMenuItemEndGInt _MItmGrup¸`spmuInt nameStrn EditSelectAll textStrn Select &All indxInt €scutStrnCmd+A MiSKStrnA MiMkInt maEnInt EncoInt flagInt SuprStrnMenuItemEndGInt `EndGInt XPadnPadn´************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************BlokpUIsWnStGrup4aOTabGrupbContInt eSptInt ÈEndGInt bOTabGrupdcContInt m{×ÿLSptInt ŠRSptInt ¬ScrXInt ScrYInt lstHInt @lstVInt @CtrlInt EndGInt cOTabGrup4dContInt m{×ÿAltEInt LSptInt  ciIDInt EndGInt dLsLcStrn Window1.Close rEdtRect"å"¬EndGInt aPadnPadnˆ************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************EOF!