Jump to content

Re-write of _FileWriteToLine()


guinness
 Share

Recommended Posts

My text looks like your screen shot and I have no idea what "and after manually control the line" means.

$fTimerDiff = TimerInit()
_FileWriteToLineEx(@DesktopDir & '\Test.inf', ';This is Comment Line',249996)
If @Error Then ConsoleWrite(@error & @CRLF)
$fTimerDiff = TimerDiff($fTimerDiff)
ConsoleWrite($fTimerDiff & @CRLF)

$fTimerDiff = TimerInit()
_FileWriteToLineEx(@DesktopDir & '\Test.inf', ';This is Comment Line',249997, $FRL_OVERWRITE)
If @Error Then ConsoleWrite(@error & @CRLF)
$fTimerDiff = TimerDiff($fTimerDiff)
ConsoleWrite($fTimerDiff & @CRLF)

$fTimerDiff = TimerInit()
_FileWriteToLineEx(@DesktopDir & '\Test.inf', ';This is Comment Line',249998, $FRL_DELETE)
If @Error Then ConsoleWrite(@error & @CRLF)
$fTimerDiff = TimerDiff($fTimerDiff)
ConsoleWrite($fTimerDiff & @CRLF)
 
look imagine

the line 249996 was written - Name249996 = Value249996;This is Comment Line

the line 249997 was overwrite - ;This is Comment Line -

the line 249998 was deleted

- Name249998 = Value249998 does not exist

 

Ciao.

apps-odrive.pngdrive_app_badge.png box-logo.png new_logo.png MEGA_Logo.png

Link to comment
Share on other sites

  • Replies 113
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Posted Images

How did that happen DXRW4E? What happened to the comment on 249998?

_FileWriteToLineEx(@DesktopDir & '\Test.inf', ';This is Comment Line',249998, $FRL_DELETE)

For this reason the keyname have numbers, to understand what happens

Ciao.

Edited by DXRW4E

apps-odrive.pngdrive_app_badge.png box-logo.png new_logo.png MEGA_Logo.png

Link to comment
Share on other sites

Hi.

Like others functions that read file data in variable, this function doesn't work on large file (> 170Mo).

Maybe It would be sensible to rewrite the function(s) to take care about that. ^^

Best Regards.Thierry

Link to comment
Share on other sites

Pardon my ignorance, but do text files of that size actually exist? I mean wouldn't you use a database?

UDF List:

 
_AdapterConnections()_AlwaysRun()_AppMon()_AppMonEx()_ArrayFilter/_ArrayReduce_BinaryBin()_CheckMsgBox()_CmdLineRaw()_ContextMenu()_ConvertLHWebColor()/_ConvertSHWebColor()_DesktopDimensions()_DisplayPassword()_DotNet_Load()/_DotNet_Unload()_Fibonacci()_FileCompare()_FileCompareContents()_FileNameByHandle()_FilePrefix/SRE()_FindInFile()_GetBackgroundColor()/_SetBackgroundColor()_GetConrolID()_GetCtrlClass()_GetDirectoryFormat()_GetDriveMediaType()_GetFilename()/_GetFilenameExt()_GetHardwareID()_GetIP()_GetIP_Country()_GetOSLanguage()_GetSavedSource()_GetStringSize()_GetSystemPaths()_GetURLImage()_GIFImage()_GoogleWeather()_GUICtrlCreateGroup()_GUICtrlListBox_CreateArray()_GUICtrlListView_CreateArray()_GUICtrlListView_SaveCSV()_GUICtrlListView_SaveHTML()_GUICtrlListView_SaveTxt()_GUICtrlListView_SaveXML()_GUICtrlMenu_Recent()_GUICtrlMenu_SetItemImage()_GUICtrlTreeView_CreateArray()_GUIDisable()_GUIImageList_SetIconFromHandle()_GUIRegisterMsg()_GUISetIcon()_Icon_Clear()/_Icon_Set()_IdleTime()_InetGet()_InetGetGUI()_InetGetProgress()_IPDetails()_IsFileOlder()_IsGUID()_IsHex()_IsPalindrome()_IsRegKey()_IsStringRegExp()_IsSystemDrive()_IsUPX()_IsValidType()_IsWebColor()_Language()_Log()_MicrosoftInternetConnectivity()_MSDNDataType()_PathFull/GetRelative/Split()_PathSplitEx()_PrintFromArray()_ProgressSetMarquee()_ReDim()_RockPaperScissors()/_RockPaperScissorsLizardSpock()_ScrollingCredits_SelfDelete()_SelfRename()_SelfUpdate()_SendTo()_ShellAll()_ShellFile()_ShellFolder()_SingletonHWID()_SingletonPID()_Startup()_StringCompact()_StringIsValid()_StringRegExpMetaCharacters()_StringReplaceWholeWord()_StringStripChars()_Temperature()_TrialPeriod()_UKToUSDate()/_USToUKDate()_WinAPI_Create_CTL_CODE()_WinAPI_CreateGUID()_WMIDateStringToDate()/_DateToWMIDateString()Au3 script parsingAutoIt SearchAutoIt3 PortableAutoIt3WrapperToPragmaAutoItWinGetTitle()/AutoItWinSetTitle()CodingDirToHTML5FileInstallrFileReadLastChars()GeoIP databaseGUI - Only Close ButtonGUI ExamplesGUICtrlDeleteImage()GUICtrlGetBkColor()GUICtrlGetStyle()GUIEventsGUIGetBkColor()Int_Parse() & Int_TryParse()IsISBN()LockFile()Mapping CtrlIDsOOP in AutoItParseHeadersToSciTE()PasswordValidPasteBinPosts Per DayPreExpandProtect GlobalsQueue()Resource UpdateResourcesExSciTE JumpSettings INISHELLHOOKShunting-YardSignature CreatorStack()Stopwatch()StringAddLF()/StringStripLF()StringEOLToCRLF()VSCROLLWM_COPYDATAMore Examples...

Updated: 22/04/2018

Link to comment
Share on other sites

trivial error, in the line 1 the $iOffSet is always by force = 0 ehhhhh, I see here if there more to repair

;~     If $iLine = 1 Then
;~         $iOffSet = BitAND($iFlags, $FRL_OVERWRITE_DELETE) ? 0 : StringInStr($sData, $EOL, $STR_CASESENSE, 1)
;~     Else
;~         $iOffSet = StringInStr($sData, $EOL, $STR_CASESENSE, ($iLine < 0 ? $iLine : $iLine - 1))
;~         If Not $iOffSet Then Return SetError(2, 0, False)
;~     EndIf

;; in


    If $iLine <> 1 Then
        $iOffSet = StringInStr($sData, $EOL, $STR_CASESENSE, ($iLine < 0 ? $iLine : $iLine - 1))
        If Not $iOffSet Then Return SetError(2, 0, False)
    EndIf

Ciao.

Edited by DXRW4E

apps-odrive.pngdrive_app_badge.png box-logo.png new_logo.png MEGA_Logo.png

Link to comment
Share on other sites

@guinness

It was just to point an old problem. I know that a text file greater than 170Mo is a pain, but it can exist (big manual ^^ or crazy log file).

The user can also do treatment to a non "plain text file". Yes I know the arguments about that but why put limits if we can do in another way.

With this function, the result is a memory allocation error and the original file is deleted !!!

Maybe you can take care about this and try in another way.

Just an idea. If I try something like this :

Local $hReadFile = FileOpen($sFilePath)
    Local $hWriteFile = FileOpen(@TempDir & "\"  & $sFilePath, FileGetEncoding($sFilePath) + $FO_OVERWRITE)
    Local $iCount
    While 1
        $Line = FileReadLine($hReadFile)
        If @error Then ExitLoop
        $iCount += 1

        ; Treatment for file line (to complete or modify) ... 
        If $iCount = $iLine Then
            FileWrite($hWriteFile, $Line & $sText & @CRLF)
        Else
            FileWrite($hWriteFile, $Line & @CRLF)
        EndIf

    WEnd
    FileClose($hReadFile)
    FileClose($hWriteFile)
    FileMove(@TempDir & "\" & $sFilePath, $sFilePath, 1)

the treatment time is divided by 2 for a 5Mo file size and by 3 for a 150Mo file size and like this we can do treatment on any files (including big files).

In the code above, some treatments are missing, but it was just to present the idea. It can be completed. ;)

Edited by Tlem

Best Regards.Thierry

Link to comment
Share on other sites

Post in already upgraded, repaired the BUG of first line

@Tlem

there is nothing wrong with the function I think there are limits, it seems more than that is not possible, I doubt that other function can never do better, the StringInStr works byref I think logically  serve them only a few Kb of memory to read also files of 1 GB, no complications reads character by character

;; CMD line reg export HKLM\SOFTWARE "%UserProfile%\Desktop\SOFTWARE.reg"
Local $sData = FileRead(@DesktopDir & '\software.reg'),$iOffset
$fTimerDiff = TimerInit()
$iOffset = StringInStr($sData, @LF, 1)
$fTimerDiff = TimerDiff($fTimerDiff)
ConsoleWrite($fTimerDiff & @CRLF)

$fTimerDiff = TimerInit()
$iOffset = StringRegExp($sData, @LF)
$fTimerDiff = TimerDiff($fTimerDiff)
ConsoleWrite($fTimerDiff & @CRLF)

;~ >Running:(3.3.10.2):C:\Program Files (x86)\AutoIt3\autoit3.exe "C:\Users\DXRW4E\Desktop\_FileWriteToLineEx.au3"    
;~ --> Press Ctrl+Alt+F5 to Restart or Ctrl+Break to Stop
;~ 33.5663982155213
;~ 325.281115425567
;~ +>01:36:07 AutoIt3.exe ended.rc:0
;~ >Exit code: 0    Time: 6.075

almost 10 times faster than the regexp, because as i said there are no complications, precisely the StringInStr start more quickly, I do not think is the fault of StringInStr, I think there are limits and just how to say, as I said I think better than that can not do there

however, the tests made ​​by me, Software.reg ('reg.exe export HKLMSOFTWARE "%UserProfile%DesktopSOFTWARE.reg"') 250 MB more than 2,400,000 line

;; CMD line reg export HKLM\SOFTWARE "%UserProfile%\Desktop\SOFTWARE.reg"
$fTimerDiff = TimerInit()
_FileWriteToLineEx(@DesktopDir & '\software.reg', ';This is Comment Linexx',2152567)    ;2152567 - offset 133298440
If @Error Then ConsoleWrite("!@Error - " & @error & @CRLF)
$fTimerDiff = TimerDiff($fTimerDiff)
ConsoleWrite($fTimerDiff & @CRLF)

;OK

;; CMD line reg export HKLM\SOFTWARE "%UserProfile%\Desktop\SOFTWARE.reg"
$fTimerDiff = TimerInit()
_FileWriteToLineEx(@DesktopDir & '\software.reg', ';This is Comment Linexx',2152568)
If @Error Then ConsoleWrite("!@Error - " & @error & @CRLF)
$fTimerDiff = TimerDiff($fTimerDiff)
ConsoleWrite($fTimerDiff & @CRLF)

;@Error 2 - File has less lines than $iLine
;It seems that StringInStr after controlling more than 133.298.440 characters after ignores the rest

Ciao.

Edited by DXRW4E

apps-odrive.pngdrive_app_badge.png box-logo.png new_logo.png MEGA_Logo.png

Link to comment
Share on other sites

@DXRW4E

on my Windows XP x32, this only line :

Global $sData = Fileread($sFile)

with a file greater than 180Mo made a memory allocation error.

I know that there must be limits, but in this case it will be a good idea to test the size before an return an error for signal that the file is to big instead of deleting it !

Edited by Tlem

Best Regards.Thierry

Link to comment
Share on other sites

look this

Local $sData = FileRead(@DesktopDir & '\software.reg'),$iOffset
;; CMD line reg export HKLM\SOFTWARE "%UserProfile%\Desktop\SOFTWARE.reg"

$fTimerDiff = TimerInit()
;_FileWriteToLineEx(@DesktopDir & '\software.reg', ';This is Comment Linexx',2152567)   ;2152567 - offset 133298440
;If @Error Then ConsoleWrite("!@Error - " & @error & @CRLF)
$iOffset = StringRegExp($sData, @LF)
$fTimerDiff = TimerDiff($fTimerDiff)
ConsoleWrite($fTimerDiff & @CRLF)

$fTimerDiff = TimerInit()
;_FileWriteToLineEx(@DesktopDir & '\software.reg', ';This is Comment Linexx',2152567)   ;2152567 - offset 133298440
;If @Error Then ConsoleWrite("!@Error - " & @error & @CRLF)
$iOffset = StringInStr($sData, @LF, 1, 2152560)
$fTimerDiff = TimerDiff($fTimerDiff)
ConsoleWrite($fTimerDiff & @CRLF)
ConsoleWrite($iOffset & @CRLF)


;~ >Running:(3.3.10.2):C:\Program Files (x86)\AutoIt3\autoit3.exe "C:\Users\DXRW4E\Desktop\_FileWriteToLineEx.au3"    
;~ --> Press Ctrl+Alt+F5 to Restart or Ctrl+Break to Stop
;~ 318.657644222719
;~ 793.428344396806
;~ 133297734

800 milliseconds to find line number 2.152.560 ehhhh

Ciao.

Edited by DXRW4E

apps-odrive.pngdrive_app_badge.png box-logo.png new_logo.png MEGA_Logo.png

Link to comment
Share on other sites

@DXRW4E

on my Windows XP x32, Fileread($sFile) with a file greater than 180Mo make an allocation error.

I know that there must be limits, but in this case it will be a good idea to test the size before an return an error for signal that the file is to big instead of deleting it !

for this reason I say that is the windows limit, maybe if have 8 GB of system RAM or more there are no problems also file with 400 MB

I do not think that _FileWriteToLine() will first calculate windows version and cpu and ram and more (I think it is impossible, are thousands of scenarios ect ect), and then decide what to do, are extreme cases to indicate _FileWriteToLine() file 200 mb or more

Ciao.

apps-odrive.pngdrive_app_badge.png box-logo.png new_logo.png MEGA_Logo.png

Link to comment
Share on other sites

I do not think that _FileWriteToLine() will first calculate windows version and cpu and ram and more (I think it is impossible, are thousands of scenarios ect ect), and then decide what to do, are extreme cases to indicate _FileWriteToLine() file 200 mb or more

 

It's why I propose another solution that doesn't care about arch, memory, cpu or file size.

But it doesn't matter, I made only a simple proposal. If one day I have to do this for me and on a big file, I will write my own function. ;)

Edited by Tlem

Best Regards.Thierry

Link to comment
Share on other sites

Even the current function has its limitations.

UDF List:

 
_AdapterConnections()_AlwaysRun()_AppMon()_AppMonEx()_ArrayFilter/_ArrayReduce_BinaryBin()_CheckMsgBox()_CmdLineRaw()_ContextMenu()_ConvertLHWebColor()/_ConvertSHWebColor()_DesktopDimensions()_DisplayPassword()_DotNet_Load()/_DotNet_Unload()_Fibonacci()_FileCompare()_FileCompareContents()_FileNameByHandle()_FilePrefix/SRE()_FindInFile()_GetBackgroundColor()/_SetBackgroundColor()_GetConrolID()_GetCtrlClass()_GetDirectoryFormat()_GetDriveMediaType()_GetFilename()/_GetFilenameExt()_GetHardwareID()_GetIP()_GetIP_Country()_GetOSLanguage()_GetSavedSource()_GetStringSize()_GetSystemPaths()_GetURLImage()_GIFImage()_GoogleWeather()_GUICtrlCreateGroup()_GUICtrlListBox_CreateArray()_GUICtrlListView_CreateArray()_GUICtrlListView_SaveCSV()_GUICtrlListView_SaveHTML()_GUICtrlListView_SaveTxt()_GUICtrlListView_SaveXML()_GUICtrlMenu_Recent()_GUICtrlMenu_SetItemImage()_GUICtrlTreeView_CreateArray()_GUIDisable()_GUIImageList_SetIconFromHandle()_GUIRegisterMsg()_GUISetIcon()_Icon_Clear()/_Icon_Set()_IdleTime()_InetGet()_InetGetGUI()_InetGetProgress()_IPDetails()_IsFileOlder()_IsGUID()_IsHex()_IsPalindrome()_IsRegKey()_IsStringRegExp()_IsSystemDrive()_IsUPX()_IsValidType()_IsWebColor()_Language()_Log()_MicrosoftInternetConnectivity()_MSDNDataType()_PathFull/GetRelative/Split()_PathSplitEx()_PrintFromArray()_ProgressSetMarquee()_ReDim()_RockPaperScissors()/_RockPaperScissorsLizardSpock()_ScrollingCredits_SelfDelete()_SelfRename()_SelfUpdate()_SendTo()_ShellAll()_ShellFile()_ShellFolder()_SingletonHWID()_SingletonPID()_Startup()_StringCompact()_StringIsValid()_StringRegExpMetaCharacters()_StringReplaceWholeWord()_StringStripChars()_Temperature()_TrialPeriod()_UKToUSDate()/_USToUKDate()_WinAPI_Create_CTL_CODE()_WinAPI_CreateGUID()_WMIDateStringToDate()/_DateToWMIDateString()Au3 script parsingAutoIt SearchAutoIt3 PortableAutoIt3WrapperToPragmaAutoItWinGetTitle()/AutoItWinSetTitle()CodingDirToHTML5FileInstallrFileReadLastChars()GeoIP databaseGUI - Only Close ButtonGUI ExamplesGUICtrlDeleteImage()GUICtrlGetBkColor()GUICtrlGetStyle()GUIEventsGUIGetBkColor()Int_Parse() & Int_TryParse()IsISBN()LockFile()Mapping CtrlIDsOOP in AutoItParseHeadersToSciTE()PasswordValidPasteBinPosts Per DayPreExpandProtect GlobalsQueue()Resource UpdateResourcesExSciTE JumpSettings INISHELLHOOKShunting-YardSignature CreatorStack()Stopwatch()StringAddLF()/StringStripLF()StringEOLToCRLF()VSCROLLWM_COPYDATAMore Examples...

Updated: 22/04/2018

Link to comment
Share on other sites

You have a big ^^ and fast computer. hihihi

>"C:\Program Files (x86)\AutoIt3\SciTE\AutoIt3Wrapper\AutoIt3Wrapper.exe" /run /prod /ErrorStdOut /in "C:\Users\DXRW4E\Desktop\_FileWriteToLineEx.au3" /UserParams    
+>01:47:13 Starting AutoIt3Wrapper v.2.1.4.0 SciTE v.3.3.7.0 ;  Keyboard:00000409  OS:WIN_81/  CPU:X64 OS:X64    Environment(Language:0409  Keyboard:00000409  OS:WIN_81/  CPU:X64 OS:X64)
>Running AU3Check (3.3.10.2)  from:C:\Program Files (x86)\AutoIt3
+>01:47:13 AU3Check ended.rc:0
>Running:(3.3.10.2):C:\Program Files (x86)\AutoIt3\autoit3.exe "C:\Users\DXRW4E\Desktop\_FileWriteToLineEx.au3"    
--> Press Ctrl+Alt+F5 to Restart or Ctrl+Break to Stop
318.657644222719
793.428344396806
133297734
+>01:47:20 AutoIt3.exe ended.rc:0
>Exit code: 0    Time: 6.667
@OffTopic

in recent years I burned 4 laptop ehhh, because I work a lot in the VMware Workstation, if you see in my signature(Google Drive) I do addon and UpdatePack for all windows, try it ;)

OnePiece_Windows_XP_Post-SP3_UpdatePack_v7.5.0_FRA_D78A2215C4EC5A6AAC3376EEC0A696CA.7z

OnePiece_Windows_XP_Post-SP3_UpdatePack_v7.5.0_FRA_D78A2215C4EC5A6AAC3376EEC0A696CA.7z

https://www.googledrive.com/host/0B5EBubruZ8REVVVTazBjNjJ1ZXM/HotfixList.html

now I'm in PC HOME, PC of many years ago, not a powerful PC, is ok  but is old ehhh

 

Ciao.

Edited by DXRW4E

apps-odrive.pngdrive_app_badge.png box-logo.png new_logo.png MEGA_Logo.png

Link to comment
Share on other sites

@DXRW4E

You quote me, but you forget this part :

 

But it doesn't matter, I made only a simple proposal. If one day I have to do this for me and on a big file, I will write my own function.

 

I reminder the >question of guinness :

Suggestions? Comments? Dislikes?

 

When I make a work, I try to not do it more that once and if I can, I do it not only for my case and I try to plan the unpredictable.

guinness and you are talking about crazy size of a text file, but actually big files are legion and a big log file or CVS file can be used by anyone. Yes, it is crazy to work on a such file, but you are not in the mind of other users. Keeping this function with limits is your choice.

Beyond this fact, what disturbs me, it's that the file is purely deleted if the function crash!!!

 

Now, as I have said before, it doesn't matter (except file deletion), we can keep the limits.

Because my suggestion is not welcome, I return to my cave to hibernate. ^^

Best Regards.Thierry

Link to comment
Share on other sites

@DXRW4E

You quote me, but you forget this part :

 

I reminder the >question of guinness :

I did say that, but I was hoping for a little more productivity if you disliked it. If you know of a workaround then please do show us, otherwise your comment about limitation has been noted and filed.

UDF List:

 
_AdapterConnections()_AlwaysRun()_AppMon()_AppMonEx()_ArrayFilter/_ArrayReduce_BinaryBin()_CheckMsgBox()_CmdLineRaw()_ContextMenu()_ConvertLHWebColor()/_ConvertSHWebColor()_DesktopDimensions()_DisplayPassword()_DotNet_Load()/_DotNet_Unload()_Fibonacci()_FileCompare()_FileCompareContents()_FileNameByHandle()_FilePrefix/SRE()_FindInFile()_GetBackgroundColor()/_SetBackgroundColor()_GetConrolID()_GetCtrlClass()_GetDirectoryFormat()_GetDriveMediaType()_GetFilename()/_GetFilenameExt()_GetHardwareID()_GetIP()_GetIP_Country()_GetOSLanguage()_GetSavedSource()_GetStringSize()_GetSystemPaths()_GetURLImage()_GIFImage()_GoogleWeather()_GUICtrlCreateGroup()_GUICtrlListBox_CreateArray()_GUICtrlListView_CreateArray()_GUICtrlListView_SaveCSV()_GUICtrlListView_SaveHTML()_GUICtrlListView_SaveTxt()_GUICtrlListView_SaveXML()_GUICtrlMenu_Recent()_GUICtrlMenu_SetItemImage()_GUICtrlTreeView_CreateArray()_GUIDisable()_GUIImageList_SetIconFromHandle()_GUIRegisterMsg()_GUISetIcon()_Icon_Clear()/_Icon_Set()_IdleTime()_InetGet()_InetGetGUI()_InetGetProgress()_IPDetails()_IsFileOlder()_IsGUID()_IsHex()_IsPalindrome()_IsRegKey()_IsStringRegExp()_IsSystemDrive()_IsUPX()_IsValidType()_IsWebColor()_Language()_Log()_MicrosoftInternetConnectivity()_MSDNDataType()_PathFull/GetRelative/Split()_PathSplitEx()_PrintFromArray()_ProgressSetMarquee()_ReDim()_RockPaperScissors()/_RockPaperScissorsLizardSpock()_ScrollingCredits_SelfDelete()_SelfRename()_SelfUpdate()_SendTo()_ShellAll()_ShellFile()_ShellFolder()_SingletonHWID()_SingletonPID()_Startup()_StringCompact()_StringIsValid()_StringRegExpMetaCharacters()_StringReplaceWholeWord()_StringStripChars()_Temperature()_TrialPeriod()_UKToUSDate()/_USToUKDate()_WinAPI_Create_CTL_CODE()_WinAPI_CreateGUID()_WMIDateStringToDate()/_DateToWMIDateString()Au3 script parsingAutoIt SearchAutoIt3 PortableAutoIt3WrapperToPragmaAutoItWinGetTitle()/AutoItWinSetTitle()CodingDirToHTML5FileInstallrFileReadLastChars()GeoIP databaseGUI - Only Close ButtonGUI ExamplesGUICtrlDeleteImage()GUICtrlGetBkColor()GUICtrlGetStyle()GUIEventsGUIGetBkColor()Int_Parse() & Int_TryParse()IsISBN()LockFile()Mapping CtrlIDsOOP in AutoItParseHeadersToSciTE()PasswordValidPasteBinPosts Per DayPreExpandProtect GlobalsQueue()Resource UpdateResourcesExSciTE JumpSettings INISHELLHOOKShunting-YardSignature CreatorStack()Stopwatch()StringAddLF()/StringStripLF()StringEOLToCRLF()VSCROLLWM_COPYDATAMore Examples...

Updated: 22/04/2018

Link to comment
Share on other sites

I do it >here.

Now, I do not argument more than that. If you think that it's not productive, do what you feel better. ^^

But that code has its issues, or maybe I am looking at it wrong?!

UDF List:

 
_AdapterConnections()_AlwaysRun()_AppMon()_AppMonEx()_ArrayFilter/_ArrayReduce_BinaryBin()_CheckMsgBox()_CmdLineRaw()_ContextMenu()_ConvertLHWebColor()/_ConvertSHWebColor()_DesktopDimensions()_DisplayPassword()_DotNet_Load()/_DotNet_Unload()_Fibonacci()_FileCompare()_FileCompareContents()_FileNameByHandle()_FilePrefix/SRE()_FindInFile()_GetBackgroundColor()/_SetBackgroundColor()_GetConrolID()_GetCtrlClass()_GetDirectoryFormat()_GetDriveMediaType()_GetFilename()/_GetFilenameExt()_GetHardwareID()_GetIP()_GetIP_Country()_GetOSLanguage()_GetSavedSource()_GetStringSize()_GetSystemPaths()_GetURLImage()_GIFImage()_GoogleWeather()_GUICtrlCreateGroup()_GUICtrlListBox_CreateArray()_GUICtrlListView_CreateArray()_GUICtrlListView_SaveCSV()_GUICtrlListView_SaveHTML()_GUICtrlListView_SaveTxt()_GUICtrlListView_SaveXML()_GUICtrlMenu_Recent()_GUICtrlMenu_SetItemImage()_GUICtrlTreeView_CreateArray()_GUIDisable()_GUIImageList_SetIconFromHandle()_GUIRegisterMsg()_GUISetIcon()_Icon_Clear()/_Icon_Set()_IdleTime()_InetGet()_InetGetGUI()_InetGetProgress()_IPDetails()_IsFileOlder()_IsGUID()_IsHex()_IsPalindrome()_IsRegKey()_IsStringRegExp()_IsSystemDrive()_IsUPX()_IsValidType()_IsWebColor()_Language()_Log()_MicrosoftInternetConnectivity()_MSDNDataType()_PathFull/GetRelative/Split()_PathSplitEx()_PrintFromArray()_ProgressSetMarquee()_ReDim()_RockPaperScissors()/_RockPaperScissorsLizardSpock()_ScrollingCredits_SelfDelete()_SelfRename()_SelfUpdate()_SendTo()_ShellAll()_ShellFile()_ShellFolder()_SingletonHWID()_SingletonPID()_Startup()_StringCompact()_StringIsValid()_StringRegExpMetaCharacters()_StringReplaceWholeWord()_StringStripChars()_Temperature()_TrialPeriod()_UKToUSDate()/_USToUKDate()_WinAPI_Create_CTL_CODE()_WinAPI_CreateGUID()_WMIDateStringToDate()/_DateToWMIDateString()Au3 script parsingAutoIt SearchAutoIt3 PortableAutoIt3WrapperToPragmaAutoItWinGetTitle()/AutoItWinSetTitle()CodingDirToHTML5FileInstallrFileReadLastChars()GeoIP databaseGUI - Only Close ButtonGUI ExamplesGUICtrlDeleteImage()GUICtrlGetBkColor()GUICtrlGetStyle()GUIEventsGUIGetBkColor()Int_Parse() & Int_TryParse()IsISBN()LockFile()Mapping CtrlIDsOOP in AutoItParseHeadersToSciTE()PasswordValidPasteBinPosts Per DayPreExpandProtect GlobalsQueue()Resource UpdateResourcesExSciTE JumpSettings INISHELLHOOKShunting-YardSignature CreatorStack()Stopwatch()StringAddLF()/StringStripLF()StringEOLToCRLF()VSCROLLWM_COPYDATAMore Examples...

Updated: 22/04/2018

Link to comment
Share on other sites

Hi Tlem, even my English does not allow me to explain myself better, perhaps I feel that you have not taken very good what I wrote?

this is nice, I'll be curious to see it

Anyway I told him frankly and not with irony (to understand who are the limits in windowsxp)

however (out of curiosity) who is line number (in file 170 MB) that you tried to edit in windows xp?

I did that question because I was thinking about maybe a solution, you know there's always a way ehhhhhh

 

Ciao.

Edited by DXRW4E

apps-odrive.pngdrive_app_badge.png box-logo.png new_logo.png MEGA_Logo.png

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...