faustf

Autoit3.exe no disk

11 posts in this topic

#1 ·  Posted

hi guys i have strange error , when i run any script run and maybe at half  appear this error

Autoit3.exe - No Disk

there is no disk in the drive. please insert a disk into drive

\device\harddisk2\dr2

cancel        tryagain      continue

i click over  continue  and after some time  repopup the same error

how  can  resulve it???

 

Share this post


Link to post
Share on other sites



#2 ·  Posted

Just to be clear, this happens regardless of the script you're running?


√-1 2^3 ∑ π, and it was delicious!

Share this post


Link to post
Share on other sites

#3 ·  Posted

Can you post a screenshot and an example script?

Share this post


Link to post
Share on other sites

#5 ·  Posted

no not use DriveGetDrive

the problem appear with this script

#cs ----------------------------------------------------------------------------

    AutoIt Version: 3.3.14.0
    Author:         faustf

    Script Function:
    GROSSISTI GRABBER
    BY faustf

    DA CONTROLLARE ASSOLUTAMENTE

    LA 3 COLONNA c IN EXCEL:  METTE COMPONENTI PC---> MODULI MEMORIA ----> MASTERIZZATORIDVD INTERNI???

    FUTURES
    INSERIRE I LOG , ADESSO SOLO SULL EXCEL
#ce ----------------------------------------------------------------------------

; Script Start - Add your code below here
#include <IE.au3>
#include <MsgBoxConstants.au3>
#include <StringConstants.au3>
#include <InetConstants.au3>
#include <WinAPI.au3>
#include <WinAPIsysinfoConstants.au3>
#include <WindowsConstants.au3>
#include <GDIPlus.au3>
#include <Misc.au3>
#include <INet.au3>
#include <Excel.au3>
#include <File.au3>
#include <Array.au3>

_IEErrorHandlerRegister(_User_ErrFunc)

If ProcessExists("iexplore.exe") Then ; Check if the internet esplorer process is running.
    ProcessClose("iexplore.exe")
EndIf
If ProcessExists("EXCEL.exe") Then ; Check if the excel process is running.
    ProcessClose("EXCEL.exe")
EndIf


Global $iGRitardo = 2000, $oIE, $sGName4ExcelG1
Global $aGArray, $aGArray1, $sGName4ExcelG2, $sGName4ExcelG3, $iGTimeToCeck = "6000", $iGTimeOut = "60000"
Global $iGCTRLExTrktOrNOT = 0, $iGPageDynamo = 3, $iGCTRLcreateGroup3 = 0

; variabili relative all excel
Global $oWorkbook, $A_excel = 2, $B_excel = 2, $C_excel = 2, $D_excel = 2, $E_excel = 2, $F_excel = 2, $G_excel = 2, $H_excel = 2
;Global $I = 1, $J = 1, $K = 1, $L = 1, $I_P = 0,
Global $NumB_excell_riga = 2, $H_excel_360 = 2


_ENTRA_DENTRO()
_EXCEL_CREA()
_1_STEP()

Func _1_STEP()
    ConsoleWrite('@@ (57) :(' & @MIN & ':' & @SEC & ') _1_STEP()' & @CR) ;### Function Trace

    Local $aLChoice = FileReadToArray(@ScriptDir & "\Temp_Espri\tmp_conf.txt")
    Local $aLName_link1 = _read_name_e_link_shift(@ScriptDir & "\Temp_Espri\Gruppi_1.txt", @ScriptDir & "\Temp_Espri\Gruppi_link_1.txt")
    If $aLName_link1[0] <> "END" Then
        ;_ArrayDisplay($aLName_link1)
        $sGName4ExcelG1 = $aLName_link1[0] ; inserisco il nome del gruppo 1 nella variabile globale che riutilizzo per l excel
        Local $sLHtmlRead1 = _Navigo_link($aLName_link1[1]) ; inserisco dentorurl del primo gruppo da navigare
        ;ConsoleWrite($sLHtmlRead)

        _2_STEP()
    Else
        MsgBox(0, "Info", "Hai finito di Grabbare, salvati l'excel")
        ; salva l'excel
    EndIf

EndFunc   ;==>_1_STEP

Func _2_STEP()
    ConsoleWrite('@@ (76) :(' & @MIN & ':' & @SEC & ') _2_STEP()' & @CR) ;### Function Trace

    _FileBornExist(@ScriptDir & "\Temp_Espri\Gruppi_2.txt") ;  controllo se cè file  per listare i gruppi2
    _FileBornExist(@ScriptDir & "\Temp_Espri\Gruppi_link_2.txt") ;  controllo se cè file  per listare i link dei gruppi2

    _letturaPAG_2_gruppi() ; ritorna su due array globali , nomi $aGArray , link $aGArray1
    _Salvataggio_Nomi_Link_txt(@ScriptDir & "\Temp_Espri\Gruppi_2.txt", @ScriptDir & "\Temp_Espri\Gruppi_link_2.txt", $aGArray, $aGArray1)

    _3_STEP()
EndFunc   ;==>_2_STEP

Func _3_STEP()
    ConsoleWrite('@@ (88) :(' & @MIN & ':' & @SEC & ') _3_STEP()' & @CR) ;### Function Trace

    Local $aLName_link2 = _read_name_e_link_shift(@ScriptDir & "\Temp_Espri\Gruppi_2.txt", @ScriptDir & "\Temp_Espri\Gruppi_link_2.txt")
    ;_ArrayDisplay($aLName_link2)
    If $aLName_link2[0] <> "END" Then
        $sGName4ExcelG2 = $aLName_link2[0] ; inserisco il nome del gruppo 2 nella variabile globale che riutilizzo per l excel
        ;ConsoleWrite("de"&$aLName_link2[1]&@CRLF)
        $sLName_link2 = _ArrayToString($aLName_link2, 1, 1)

        Local $sLHtmlRead2 = _Navigo_link($sLName_link2) ; inserisco dentro url del 2° gruppo da navigare

        Local $sL2DeepDysp = _CTRLPage_Not_Displayed($sLHtmlRead2) ; controllo se la pagina viene mostrata o meno
        ;MsgBox(0,'101',$sL2DeepDysp)  ; DEBUG INFO
        If $sL2DeepDysp = "Dysplayed" Then
            _4_STEP()
        ElseIf $sL2DeepDysp = "Not Dysplayed" Then
            _3_STEP()
        EndIf

    Else
        _1_STEP()

    EndIf

EndFunc   ;==>_3_STEP

Func _4_STEP()
    ConsoleWrite('@@ (115) :(' & @MIN & ':' & @SEC & ') _4_STEP()' & @CR) ;### Function Trace

    Local $sLFiltri_sino = _Controllo_su_Filtri()
    ;MsgBox(0,'119','controllo filtri'&$sLFiltri_sino) ; DEBUG INFO
    Select
        Case $sLFiltri_sino = "SI Filtri" ; si sono dentro la pagina filtri

;#cs
            Local $oBtns = $oIE.document.GetElementsByTagName("input")
    For $oBtn In $oBtns
        $name = String($oBtn.name())
        ConsoleWrite($name & @CRLF)

        If $name = "ckDisponibili" Then
            _IEAction($oBtn, "click")
        EndIf
        _IELoadWait($oIE, $iGTimeToCeck, $iGTimeOut)

    Next
        Local $oChk = _IEGetObjById($oIE, "btCerca")
            _IEAction($oChk, "click")
            _IELoadWait($oIE, $iGTimeToCeck, $iGTimeOut)
        ;   #ce
        #cs
        Local $oChk = _IEGetObjByName($oIE, "ckDisponibili")
            If @error Then
                MsgBox($MB_ICONERROR, '_IEGetObjByName', '@error = ' & @error & @CRLF & '@extended = ' & @extended)
                ; Set @error when you return from function with Failure
                Return SetError(1, 0, 0)
            EndIf

            _IEAction($oChk, "click") ;clicco v dispunto disponibili
            _IELoadWait($oIE, $iGTimeToCeck, $iGTimeOut)
            Local $oChk = _IEGetObjById($oIE, "btCerca")
            _IEAction($oChk, "click")
            _IELoadWait($oIE, $iGTimeToCeck, $iGTimeOut)
        #ce
            Sleep($iGRitardo)
            Local $sLResultYorN = _Controllo_Nn_Produce_risultati() ;  controllo se appare  il fumetto la ricerca non produce risultati
            If $sLResultYorN = "Non Produce Risultati" Then
                _3_STEP()
            EndIf


            ;  clicco su filtro cerca solo prodotti disponibili

            Local $iLResultManyOrNot = _controllo_troppi_risultati() ; controllo se mi appare il fumetto troppi risultati
            _Controllo_Errore_Generico2() ;  serve per  controllare  se cè un errore generico di pagina html , torna allo step 3

            Select
                Case $iLResultManyOrNot = 0 ; mi è apparso il fumetto troppi risultati (nella pagina filtri)
                    ;_Mostra_subito_perprezzo_2() ; se  rimane il fumetto va  a cliccare sul tasto a tendina per selezionare range prezzi

                Case $iLResultManyOrNot = 1 ; non è apparso il fumetto troppi risultati (nella pagina filtri)

                    Local $iLResultProduct4MeYorN = _controllo_se_cisono_prodotti() ;  controlla se non ci sono prodotti o se appare il banner  mi spiace non ci sono prodotti

                    Select
                        Case $iLResultProduct4MeYorN = 0 ; non ci sono prodotti
                            ;_X_3_pagina() ; questa  funzione controlla se esiste la terza pagina e su quanti link è entrato
                            $sGName4ExcelG3 = ""
                        Case $iLResultProduct4MeYorN = 1 ; ci sono prodotti
                            Sleep($iGRitardo)
                            Local $sLUrl = _IEPropertyGet($oIE, "locationurl")
                            _IENavigate($oIE, $sLUrl & "&modo=0")
                            _IELoadWait($oIE, $iGTimeToCeck, $iGTimeOut)

                            Local $iLResultMultyPageExistYN = _controllo_se_multipagina_exist() ;  controlla se  quando entro dentro prodotti   ci sono piu pagine

                            ;Local $real_page = ($Controll_page - 2)
                            ;Local $1_fase = StringReplace($stringa, 'amp;', '')
                            ;$indirizzo_MULTI_pag = StringTrimRight($1_fase, '1')

                            Select
                                Case $iLResultMultyPageExistYN = 0 ; non ci sono  multipagine puoi iniziare ad estrarre
                                    _estrazione_prodotti() ; estrazione prodotti

                                Case $iLResultMultyPageExistYN = 1 ; ci sono multipagine
                                    Local $sLUrl = _IEPropertyGet($oIE, "locationurl")
                                    Local $iLNM = 1

                                    Do ; loop scorri piu pagine ed estrai prodotti
                                        Local $iLCTRLEndMultiPage = _controllo_se_cisono_prodotti()
                                        If $iLCTRLEndMultiPage <> 0 Then
                                            _estrazione_prodotti() ; estrazione prodotti
                                        EndIf

                                        _IENavigate($oIE, $sLUrl & "&page=" & $iLNM)
                                        ;MsgBox(0,'186',$sLUrl & "&page=" & $iLNM)  ; DEBUG
                                        ;MsgBox(0,'187',$iLCTRLEndMultiPage) ; DEBUG
                                        _IELoadWait($oIE, $iGTimeToCeck, $iGTimeOut)
                                        $iLNM += 1
                                    Until $iLCTRLEndMultiPage = 0
                            EndSelect
                    EndSelect
            EndSelect

        Case $sLFiltri_sino = "NO Filtri" ; non sono dentro la pagina filtri

            $iGCTRLExTrktOrNOT = 1
            _Controllo_Errore_Generico2()

            _5_STEP_D() ;  per creazione terzo gruppo  , dinamico

    EndSelect

    Select
        Case $iGCTRLcreateGroup3 <= 0
            $aCTRLeXistLink = FileReadToArray(@ScriptDir & "\Temp_Espri\Gruppi_2.txt")
            If IsArray($aCTRLeXistLink) Then
                _3_STEP()
            Else
                _1_STEP()
            EndIf
        Case $iGCTRLcreateGroup3 >= 3
            $aCTRLeXistLink = FileReadToArray(@ScriptDir & "\Temp_Espri\Gruppi_" & $iGPageDynamo & ".txt")
            If IsArray($aCTRLeXistLink) Then
                _6_STEP_D()
            Else
                _3_STEP()
            EndIf
            $iGCTRLcreateGroup3 -= 1
    EndSelect


EndFunc   ;==>_4_STEP

Func _5_STEP_D()
    ConsoleWrite('@@ (227) :(' & @MIN & ':' & @SEC & ') _5_STEP_D()' & @CR) ;### Function Trace

    _crea_txt_appoggio_gruppi_e_link_DINAMICO() ;creo file txt di appoggio con i link e i nomi profondita 3 livello minimo
    _LetturaHTML_DINAMICO_gruppi_Deep3() ; leggo sulla pagina 3 i link dei gruppi e i nomi
    _estrazione_menu_p_ripulito(@ScriptDir & "\Temp_Espri\Gruppi_" & $iGPageDynamo & ".txt", @ScriptDir & "\Temp_Espri\Gruppi_link_" & $iGPageDynamo & ".txt") ; estrae dalla  array  i link e  i grppi e li mette in un txt, fatto su misura per la 3 pagina

    _6_STEP_D()
EndFunc   ;==>_5_STEP_D

Func _6_STEP_D()
    ConsoleWrite('@@ (237) :(' & @MIN & ':' & @SEC & ') _6_STEP_D() gruppo 3' & @CR) ;### Function Trace

    Local $aLNameLinkG3 = _read_name_e_link_shift(@ScriptDir & "\Temp_Espri\Gruppi_" & $iGPageDynamo & ".txt", @ScriptDir & "\Temp_Espri\Gruppi_link_" & $iGPageDynamo & ".txt") ;  leggo il nome  e il link del terzo gruppo  e lo elimino dai txt
    $iGCTRLcreateGroup3 = $iGPageDynamo
    ;   MsgBox(0, '494', @ScriptDir & "\Temp_Espri\Gruppi_" & $iGPageDynamo & ".txt"); DEBUG
    ;_ArrayDisplay($aLNameLinkG3, '479 link g3') ; DEBUG
    If IsArray($aLNameLinkG3) Then

        Select
            Case $aLNameLinkG3[0] <> ""
                $sGName4ExcelG3 = $aLNameLinkG3[0]
                Local $sLHTML_3_Read = _Navigo_link($aLNameLinkG3[1])
                Local $sLCTRL3Result = _Controllo_su_Filtri()
                If $sLCTRL3Result = "SI Filtri" Then
                    _4_STEP()
                ElseIf $sLCTRL3Result = "NO Filtri" Then
                    $iGPageDynamo += 1
                    _6_STEP_D()
                EndIf

            Case $aLNameLinkG3[0] = "END" ; finito di leggere il foglio del gruppo 3
                ; qui cè da metterci x_3_pagina()
                MsgBox(0, '260', $iGPageDynamo)
                If $iGPageDynamo = 3 Then
                    $sGName4ExcelG3 = ""
                    _3_STEP()
                ElseIf $iGPageDynamo > 3 Then
                    MsgBox(0, '506', 'gruppi maggiori di 3 ')
                EndIf
        EndSelect

    Else
        MsgBox(0, '159', 'Non è uun array il gruppo 3 ')

    EndIf


EndFunc   ;==>_6_STEP_D


Func _estrazione_prodotti()
    ConsoleWrite('@@ (278) :(' & @MIN & ':' & @SEC & ') _estrazione_prodotti()' & @CR) ;### Function Trace

    Local $produ_sHTML_sporco = _IEBodyReadHTML($oIE)
    Local $Esaurito_345 = StringInStr($produ_sHTML_sporco, "Esaurito")
    Local $Non_Vendibile_319 = StringInStr($produ_sHTML_sporco, "Non Vendibile")

    If $Esaurito_345 = 0 Or $Non_Vendibile_319 = 0 Then

        Local $produ_sHTML_sporco_promo = StringReplace($produ_sHTML_sporco, "-€", "€")
        Local $produ_sHTML_sporco_promo_2 = StringReplace($produ_sHTML_sporco_promo, "strong", "")
        Local $produ_sHTML = StringReplace($produ_sHTML_sporco_promo_2, "</>", "")

        _True_write_File(@ScriptDir & "\Temp_Espri\PROD.TXT", $produ_sHTML)

        Local $produ_sTXT = _IEBodyReadText($oIE)
        _True_write_File(@ScriptDir & "\Temp_Espri\PRODtxt.TXT", $produ_sTXT)
        Local $aArray_Cod_prodotti = StringRegExp($produ_sTXT, '(?i)Codice Articolo : (.*?)\r\n', $STR_REGEXPARRAYGLOBALMATCH)

        Local $produ_sHTML_Clean = StringReplace($produ_sHTML, "<>", "")
        _True_write_File(@ScriptDir & "\Temp_Espri\PREZZIDEBUG.TXT", $produ_sHTML)
        Local $aArray_Listino_prodotti = StringRegExp($produ_sHTML_Clean, '(?i)"tooltip">€ (.*?)<span>.+?</span>', $STR_REGEXPARRAYGLOBALMATCH)
        Local $aArray_Listino_prodotti_decimale = StringRegExp($produ_sHTML_Clean, '(?i)"tooltip">€ .+?<span>(.*?)</span>', $STR_REGEXPARRAYGLOBALMATCH)
        If IsArray($aArray_Listino_prodotti) Then

        Else
            If StringInStr($produ_sHTML_Clean, "€") <> 0 Then
            EndIf
        EndIf

        If $aArray_Cod_prodotti = 1 Then
            Local $aArray_Cod_prodotti = StringRegExp($produ_sHTML, '(?i)class="modello">(.*?) <span class="txtCompatibile">', $STR_REGEXPARRAYGLOBALMATCH)
        EndIf

        Local $sResult_control = _Excel_RangeRead($oWorkbook, Default, "G" & $G_excel)
        If $sResult_control <> '' Then
            MsgBox(0, 'info', 'cè stato uno shift da controllare fuck !!!!')
        EndIf
        $G_excel -= 1
        Local $sResult_control1 = _Excel_RangeRead($oWorkbook, Default, "G" & $G_excel)
        If $sResult_control1 = '' Then
            MsgBox(0, 'info', 'cè stato uno shift_vuoto da controllare fuck !!!!')
        EndIf
        $G_excel += 1

        ;-----------------  INIZIO  ESTRAGGO  DISPONIBILITA WEB  --------------------------------------------------------------------------------------------------
        Local $sHTML_text_dispo = _IEBodyReadText($oIE)
        Local $aArray_Dispo_web = StringRegExp($sHTML_text_dispo, '(?i)Dispo WEB: ([^\r\n]*)', $STR_REGEXPARRAYGLOBALMATCH)
        Local $aArray_Arrivi_web = StringRegExp($sHTML_text_dispo, '(?i)Arrivi:([^\r\n]*)', $STR_REGEXPARRAYGLOBALMATCH)
        For $i_dispoweb = 0 To UBound($aArray_Dispo_web) - 1
            If $aArray_Dispo_web[$i_dispoweb] <> 0 Then
                _Excel_RangeWrite($oWorkbook, $oWorkbook.Activesheet, $aArray_Dispo_web[$i_dispoweb], "G" & $G_excel) ; disponibilita
                $G_excel += 1
                ;;MsgBox($MB_SYSTEMMODAL, "dispo web " & $i_dispoweb, $aArray_Dispo_web[$i_dispoweb])
            EndIf
        Next
        For $i_arriviweb = 0 To UBound($aArray_Arrivi_web) - 1
            Local $arrivi_web_clean = StringReplace($aArray_Arrivi_web[$i_arriviweb], "?", "")

            ;-----------------  controllo excel se  slitta i valori -------------------------------------------------------
            Local $H_excel_read_control = ($H_excel_360 + 2)
            Local $controllo_lettura_excel = _Excel_RangeRead($oWorkbook, $oWorkbook.Activesheet, "H" & $H_excel_read_control)
            ;MsgBox (0,'fioodena',$controllo_lettura_excel)
            If $controllo_lettura_excel <> "" Then
                MsgBox(0, 'Info', 'slittamento su foglo excel avvenuto CONTROLLA !!! ')
            EndIf
            ;--------------------------------------------------------------------------------------------------------------
            _Excel_RangeWrite($oWorkbook, $oWorkbook.Activesheet, $arrivi_web_clean, "H" & $H_excel) ;  riordino
            $H_excel += 1
            $H_excel_360 += 1
            ;;MsgBox($MB_SYSTEMMODAL, "arrivi web " & $i_arriviweb, $aArray_Arrivi_web[$i_arriviweb])
        Next

        ;-----------------  FINE ESTRAGGO  DISPONIBILITA WEB  --------------------------------------------------------------------------------------------------

        For $i_CodP = 0 To UBound($aArray_Cod_prodotti) - 1
            Local $verifica_estensione = StringRight($aArray_Cod_prodotti[$i_CodP], 3) ;
            Local $controllo_pulizia_codice = StringInStr($aArray_Cod_prodotti[$i_CodP], '</strong>')
            ;Local $iIndex = _ArraySearch($aArray_Cod_prodotti[$i_CodP], '</strong>')
            ;;MsgBox(0,'array search',$controllo_pulizia_codice)
            If $controllo_pulizia_codice = 0 Then
                If StringLen($aArray_Cod_prodotti[$i_CodP]) > 34 Then
                    Local $replace_Cls_Cod_2 = StringRegExpReplace($aArray_Cod_prodotti[$i_CodP], '(?i)^.*>(.*?)', '')
                    ;Local  $replace_Cls_Cod=StringRegExpReplace($aArray_Cod_prodotti[$i_CodP], '(?i)</(.*?)$', '')
                    If $replace_Cls_Cod_2 = "HD-10" Then
                        $bug_EXC_2372_397 = 1
                    EndIf
                    $Remove_space_400 = StringStripWS($replace_Cls_Cod_2, $STR_STRIPALL) ;  rimuove  gli spazi dei codici
                    _Excel_RangeWrite($oWorkbook, $oWorkbook.Activesheet, $replace_Cls_Cod_2, "D" & $D_excel)
                    ;_Excel_RangeWrite($oWorkbook, $oWorkbook.Activesheet, $aArray_Cod_prodotti[$i_CodP], "D" & $D_excel)
                Else
                    If $aArray_Cod_prodotti[$i_CodP] = "HD-10" Then
                        $bug_EXC_2372_397 = 1
                    EndIf
                    $Remove_space_400 = StringStripWS($aArray_Cod_prodotti[$i_CodP], $STR_STRIPALL) ;  rimuove  gli spazi dei codici
                    _Excel_RangeWrite($oWorkbook, $oWorkbook.Activesheet, $aArray_Cod_prodotti[$i_CodP], "D" & $D_excel)
                EndIf
            Else
                ;   _crea_txt_menu(@ScriptDir & "\Temp_Espri" & '\maremmalupa.html', $aArray_Cod_prodotti[$i_CodP])
                ;MsgBox(0, '', $aArray_Cod_prodotti[$i_CodP])
                Local $aArr_prodotti = StringRegExp($aArray_Cod_prodotti[$i_CodP], '(?i)title="QuickInfo:(.*?)"', $STR_REGEXPARRAYGLOBALMATCH)
                For $vaff = 0 To UBound($aArr_prodotti) - 1
                    MsgBox(0, '', 'sono qui mmmde')
                    $Remove_space_400 = StringStripWS($aArr_prodotti[$vaff], $STR_STRIPALL) ;  rimuove  gli spazi dei codici
                    _Excel_RangeWrite($oWorkbook, $oWorkbook.Activesheet, $aArr_prodotti[$vaff], "D" & $D_excel)
                    If $aArr_prodotti[$vaff] = "HD-10" Then
                        $bug_EXC_2372_397 = 1
                    EndIf
                Next
            EndIf
            _Excel_RangeWrite($oWorkbook, $oWorkbook.Activesheet, $sGName4ExcelG2, "B" & $B_excel)
            _Excel_RangeWrite($oWorkbook, $oWorkbook.Activesheet, $sGName4ExcelG1, "A" & $A_excel)

            If FileExists(@ScriptDir & "\Temp_Espri\Gruppi_" & $iGPageDynamo & ".txt") Then
                Local $aLEmpty = FileReadToArray(@ScriptDir & "\Temp_Espri\Gruppi_" & $iGPageDynamo & ".txt")
                If IsArray($aLEmpty) Then
                    _Excel_RangeWrite($oWorkbook, $oWorkbook.Activesheet, $sGName4ExcelG3, "C" & $A_excel)
                EndIf
            EndIf

            #cs
                If $ilterzo = 1 Then
                _Excel_RangeWrite($oWorkbook, $oWorkbook.Activesheet, $sGName4ExcelG3, "C" & $A_excel)
                Else
                If $sGUrl <> "" Then ; questo serve se ho piu pagine ,aggiunge il 3 codice
                _Excel_RangeWrite($oWorkbook, $oWorkbook.Activesheet, $sGName4ExcelG3, "C" & $A_excel)
                EndIf
                EndIf
            #ce

            $B_excel += 1
            $A_excel += 1
            $D_excel += 1
        Next
        $ilterzo = 0
        ;-----------------  fine  ESTRAGGO  CODICI PRODOTTO DAL CORPO HTML   ------------------------------------------------------------------------------------

        ;-----------------  INIZIO  ESTRAGGO  PREZZO STREET PRICE PRODOTTO DAL CORPO HTML   ------------------------------------------------------------------------------------
        ; prezzi "I"
        Local $A = 1
        For $I = 0 To UBound($aArray_Listino_prodotti) - 1

            Local $letter = (Chr(Asc("H") + $A))
            _Excel_RangeWrite($oWorkbook, $oWorkbook.Activesheet, $aArray_Listino_prodotti[$I] & $aArray_Listino_prodotti_decimale[$I], $letter & $NumB_excell_riga)
            $A += 1
            If $A = 5 Then
                $A = 1
                $NumB_excell_riga += 1
            EndIf


        Next


        ;-----------------  fine  ESTRAGGO  PREZZO STREET PRICE  PRODOTTO DAL CORPO HTML   ------------------------------------------------------------------------------------

        ;-----------------  INIZIO  ESTRAGGO  DESCRIZIONE SHORT  PRODOTTO DAL CORPO HTML   ------------------------------------------------------------------------------------
        Local $sText = _IEBodyReadHTML($oIE)
        Local $sTexto = _IEBodyReadText($oIE)

        _True_write_File(@ScriptDir & "\Temp_Espri\DEBUG_SHORTDESCRITZ.TXT", $sText)
        _True_write_File(@ScriptDir & "\Temp_Espri\DEBUG_SHORTDESCRITZ_testo.TXT", $sTexto)
        Local $aArray_Descrizione_prodotti = StringRegExp($sText, '(?is)<div class="mostro">\h*\n(.*?)</div>', $STR_REGEXPARRAYGLOBALMATCH) ; descrizione breve

        If IsArray($aArray_Descrizione_prodotti) Then

        Else
            $aArray_Descrizione_prodotti = StringRegExp($sText, '(?is)<div class="mostro">(.*?)</strong>&nbsp;\h*</div>', $STR_REGEXPARRAYGLOBALMATCH) ; descrizione breve
        EndIf

        _True_write_File("F:\_GROSSITI-GRAB\Espri_temp\descrizione-short.txt", $sText)
        For $i_DP = 0 To UBound($aArray_Descrizione_prodotti) - 1
            Local $str = StringRegExpReplace($aArray_Descrizione_prodotti[$i_DP], '<strong.*?>', "")
            $str = StringRegExpReplace($str, '</strong>&nbsp;', " ") ; @crlf)
            _Excel_RangeWrite($oWorkbook, $oWorkbook.Activesheet, $str, "E" & $E_excel)
            $E_excel += 1
        Next

        ;-----------------  FINE   ESTRAGGO  DESCRIZIONE SHORT  PRODOTTO DAL CORPO HTML   ------------------------------------------------------------------------------------

    EndIf ; endif del controllo se è esaurito

EndFunc   ;==>_estrazione_prodotti

Func _controllo_se_multipagina_exist() ;  controlla se  quando entro dentro prodotti   ci sono piu pagine
    ConsoleWrite('@@ (456) :(' & @MIN & ':' & @SEC & ') _controllo_se_multipagina_exist()' & @CR) ;### Function Trace

    Local $sText = _IEBodyReadHTML($oIE)
    Local $sText_solo_testo = _IEBodyReadText($oIE)
    Local $aArray_link_altrePAG1_2 = StringRegExp($sText_solo_testo, '(?is)precedente(.*?)successiva', 3)
    Local $aArray_link_altrePAG1 = StringRegExp($sText, '<div class="(.*?)" abp=".+?">', 3)
    Local $macth_successiva = StringInStr($sText_solo_testo, "successiva")

    If $macth_successiva = 0 Then
        Return 0 ; non ci sono  multipagine puoi iniziare ad estrarre
    Else
        Return 1 ; ci sono multipagine
    EndIf

EndFunc   ;==>_controllo_se_multipagina_exist

Func _controllo_se_cisono_prodotti() ;  controllase  ci sono prodotti o se appare il banner  mi spiace non ci sono prodotti
    ConsoleWrite('@@ (473) :(' & @MIN & ':' & @SEC & ') _controllo_se_cisono_prodotti()' & @CR) ;### Function Trace

    Local $controllo_0_prodotti = _IEBodyReadText($oIE)
    Local $iPosition = StringInStr($controllo_0_prodotti, "Spiacenti, la ricerca effettuata non ha trovato prodotti disponibili alla vendita per te.")
    If $iPosition <> 0 Then
        Return 0 ; non ci sono prodotti
    Else
        Return 1 ;  ci sono prodotti
    EndIf
EndFunc   ;==>_controllo_se_cisono_prodotti

Func _controllo_troppi_risultati() ; controllo se mi appare il fumetto troppi risultati
    ConsoleWrite('@@ (485) :(' & @MIN & ':' & @SEC & ') _controllo_troppi_risultati()' & @CR) ;### Function Trace

    Local $sLHtml = _IEBodyReadHTML($oIE)
    Local $iLResult = StringInStr($sLHtml, "Troppi risultati!")
    If $iLResult = 0 Then
        Return 1 ; non apparso il fumetto troppi risultati
    Else
        Return 0 ; apparso il fumetto troppi risultati
    EndIf

    #cs
        Local $status_before = _IEPropertyGet($oIE, "locationurl")
        Local $oChk = _IEGetObjById($oIE, "btCerca")
        _IEAction($oChk, "click")
        _IELoadWait($oIE, $iGTimeToCeck, $iGTimeOut)
        Sleep($iGRitardo)
        Local $status_after = _IEPropertyGet($oIE, "locationurl")
        If $status_before = $status_after Then
        Return 0 ; apparso il fumetto troppi risultati
        Else
        Return 1 ; non apparso il fumetto troppi risultati
        EndIf
    #ce
EndFunc   ;==>_controllo_troppi_risultati

Func _Controllo_Nn_Produce_risultati() ;  controllo se appare  il fumetto la ricerca non produce risultati
    ConsoleWrite('@@ (511) :(' & @MIN & ':' & @SEC & ') _Controllo_Nn_Produce_risultati()' & @CR) ;### Function Trace

    Local $read_npr_160 = _IEBodyReadText($oIE)
    Local $Position_read_npr = StringInStr($read_npr_160, "La ricerca non produce risultati.")

    If $Position_read_npr = 0 Then
        Return "Produce Risultati"
    Else
        Return "Non Produce Risultati"
    EndIf

EndFunc   ;==>_Controllo_Nn_Produce_risultati





Func _crea_txt_appoggio_gruppi_e_link_DINAMICO() ;creo file txt di appoggio con i link e i nomi profondita 3 livello minimo
    ConsoleWrite('@@ (529) :(' & @MIN & ':' & @SEC & ') _crea_txt_appoggio_gruppi_e_link_DINAMICO()' & @CR) ;### Function Trace

    _FileBornExist(@ScriptDir & "\Temp_Espri\Gruppi_" & $iGPageDynamo & ".txt") ;  controllo se c'è file  per listare i gruppi
    _FileBornExist(@ScriptDir & "\Temp_Espri\Gruppi_link_" & $iGPageDynamo & ".txt") ;  controllo se c'è file  per listare i link dei gruppi

EndFunc   ;==>_crea_txt_appoggio_gruppi_e_link_DINAMICO

Func _LetturaHTML_DINAMICO_gruppi_Deep3() ; leggo sulla pagina 3 i link dei gruppi e i nomi
    ConsoleWrite('@@ (537) :(' & @MIN & ':' & @SEC & ') _LetturaHTML_DINAMICO_gruppi_Deep3()' & @CR) ;### Function Trace

    Local $sLHTML_3_Level = _IEBodyReadHTML($oIE)
    $aGArray = StringRegExp($sLHTML_3_Level, '(?s)Famiglia=.+?">(.*?)</a>', 3) ; per estrarre i gruppi pag. 0
    $aGArray1 = StringRegExp($sLHTML_3_Level, '(?is)<a\s+href="/b2b/Ricerche/FantaRicerca/MostraFiltri([^"]+)"', $STR_REGEXPARRAYGLOBALMATCH) ;per estrarre i link da oag. 0

EndFunc   ;==>_LetturaHTML_DINAMICO_gruppi_Deep3

Func _estrazione_menu_p_ripulito($Nomi_dei_MenuP, $Link_dei_MenuP) ; estrae dalla  array  i link e  i grppi e li mette in un txt, fatto su misura per la 3 pagina
    ConsoleWrite('@@ (546) :(' & @MIN & ':' & @SEC & ') _estrazione_menu_p_ripulito()' & @CR) ;### Function Trace

    For $I = 0 To UBound($aGArray) - 1
        _True_write_File($Nomi_dei_MenuP, $aGArray[$I])
    Next
    ; --------------  INIZIO RACCOLTA LINK GRUPPI -------------------------------------
    For $I = 0 To UBound($aGArray1) - 1
        ;Local $sLlink_pulito[$I] = StringReplace($aGArray1[$I], "amp;", "")
        ;_True_write_File($Link_dei_MenuP, "http://www.esprinet.com/b2b/Ricerche/FantaRicerca/MostraFiltri" & $sLlink_pulito[$I])
        _True_write_File($Link_dei_MenuP, "http://www.esprinet.com/b2b/Ricerche/FantaRicerca/MostraFiltri" & StringReplace($aGArray1[$I], "amp;", ""))
    Next
    ;----------------------------------------------------------------------------------

EndFunc   ;==>_estrazione_menu_p_ripulito


Func _Controllo_su_Filtri()
    ConsoleWrite('@@ (566) :(' & @MIN & ':' & @SEC & ') _Controllo_su_Filtri()' & @CR) ;### Function Trace

    Local $sHTML = _IEBodyReadHTML($oIE)
    If @error  Then
        MsgBox($MB_ICONERROR, '_IEBodyReadHTML', '@error = ' & @error & @CRLF & '@extended = ' & @extended)
    EndIf
    ;Local $bodi_filtro = _IEGetObjById($oIE, "miniFiltri")
    Local $bodi_filtro = StringInStr($sHTML, "miniFiltri")
    If @error Then
        MsgBox($MB_ICONERROR, '_IEGetObjById', '@error = ' & @error & @CRLF & '@extended = ' & @extended)
        ; Set @error when you return from function with Failure
        Return SetError(1, 0, 0)
    EndIf
    If $bodi_filtro = 0 Then
        Return "NO Filtri"
    Else
        Return "SI Filtri"
    EndIf

EndFunc   ;==>_Controllo_su_Filtri

Func _Controllo_Errore_Generico2()
    ConsoleWrite('@@ (585) :(' & @MIN & ':' & @SEC & ') _Controllo_Errore_Generico2()' & @CR) ;### Function Trace

    Local $controllo_ERRORE_GEN = _IEBodyReadText($oIE)
    Local $iPosition = StringInStr($controllo_ERRORE_GEN, "verificato un problema cercando di servire la risorsa che stavi cercando.")
    If $iPosition <> 0 Then
        $Controllo_ERRORgenerico = 0
        MsgBox(0, 'Info', 'ce un errore  torna in dietro dai retta nini ', 30)
        _3_STEP()
    EndIf

EndFunc   ;==>_Controllo_Errore_Generico2

Func _CTRLPage_Not_Displayed($sLHTML_Page_Nt_Dysp)
    ConsoleWrite('@@ (598) :(' & @MIN & ':' & @SEC & ') _CTRLPage_Not_Displayed()' & @CR) ;### Function Trace

    Local $iLResultPg_Nt_Dysp = StringInStr($sLHTML_Page_Nt_Dysp, "The webpage cannot be displayed")
    If $iLResultPg_Nt_Dysp = 0 Then
        Return "Dysplayed"
    Else
        Return "Not Dysplayed"
    EndIf

EndFunc   ;==>_CTRLPage_Not_Displayed

Func _Salvataggio_Nomi_Link_txt($PathName, $PathLink, $DataName, $DataLink) ; salva nomi e link  sul txt, da dopo  il livello 1
    ConsoleWrite('@@ (610) :(' & @MIN & ':' & @SEC & ') _Salvataggio_Nomi_Link_txt()' & @CR) ;### Function Trace

    For $I = 0 To UBound($DataName) - 1
        _True_write_File($PathName, $DataName[$I])
        _True_write_File($PathLink, "http://www.esprinet.com/" & $DataLink[$I])
    Next


EndFunc   ;==>_Salvataggio_Nomi_Link_txt


Func _letturaPAG_2_gruppi() ; legge la seconda pagina amplificatori autoradio audioporttile hifi
    ConsoleWrite('@@ (622) :(' & @MIN & ':' & @SEC & ') _letturaPAG_2_gruppi()' & @CR) ;### Function Trace

    Local $sLHTML_2_level = _IEBodyReadHTML($oIE) ;leggo l html body , ma è sporco per estrarre i link direttamente
    $aGArray = StringRegExp($sLHTML_2_level, "btn btn-small gradient eleCat.+?<a[^>]+>\h*([^<]+)</a>", 3)
    ;_ArrayDisplay($aGArray)
    Local $sLHTML_2_level_clean = StringReplace($sLHTML_2_level, '&amp', '">') ;  pulisco l html body
    $aGArray1 = StringRegExp($sLHTML_2_level_clean, '(?i)" rel="/(.*?)">', $STR_REGEXPARRAYGLOBALMATCH) ;  cerco la stringa link
    ;_ArrayDisplay($aGArray1)

EndFunc   ;==>_letturaPAG_2_gruppi


; #FUNCTION# ====================================================================================================================
; Author ........: faustf
; Modified.......:
; What do........: controlla se il file esiste nella cartella se si lo cancella e ne crea uno nuovo vuoto, se no non fa nulla
; ===============================================================================================================================
Func _FileBornExist($sFilePath)
    ConsoleWrite('@@ (640) :(' & @MIN & ':' & @SEC & ') _FileBornExist()' & @CR) ;### Function Trace

    Local $iFileExists = FileExists($sFilePath)
    If $iFileExists Then
        FileDelete($sFilePath)
        _FileCreate($sFilePath)
    Else
        _FileCreate($sFilePath)
    EndIf
EndFunc   ;==>_FileBornExist


Func _Navigo_link($sUrlpath)
    ConsoleWrite('@@ (653) :(' & @MIN & ':' & @SEC & ') _Navigo_link()' & @CR) ;### Function Trace

    _IENavigate($oIE, $sUrlpath)
    _IELoadWait($oIE, $iGTimeToCeck, $iGTimeOut)
    Sleep($iGRitardo)
    Local $sLTexet = _IEBodyReadText($oIE)
    Return $sLTexet

EndFunc   ;==>_Navigo_link



Func _EXCEL_CREA()
    ConsoleWrite('@@ (666) :(' & @MIN & ':' & @SEC & ') _EXCEL_CREA()' & @CR) ;### Function Trace

    Local $oAppl = _Excel_Open(True,False,True,True,True)
    If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Excel UDF: _Excel_BookOpen Example", "Error creating the Excel application object." & @CRLF & "@error = " & @error & ", @extended = " & @extended)

    $oWorkbook = _Excel_BookNew($oAppl)

    _Excel_RangeWrite($oWorkbook, $oWorkbook.Activesheet, "Categoria", "A1")
    _Excel_RangeWrite($oWorkbook, $oWorkbook.Activesheet, "Sotto Categoria", "B1")
    _Excel_RangeWrite($oWorkbook, $oWorkbook.Activesheet, "Sotto Sotto Categoria", "C1")
    _Excel_RangeWrite($oWorkbook, $oWorkbook.Activesheet, "Codice", "D1")
    _Excel_RangeWrite($oWorkbook, $oWorkbook.Activesheet, "Descrizione", "E1")
    _Excel_RangeWrite($oWorkbook, $oWorkbook.Activesheet, "", "F1")
    _Excel_RangeWrite($oWorkbook, $oWorkbook.Activesheet, "Disponibilita", "G1")
    _Excel_RangeWrite($oWorkbook, $oWorkbook.Activesheet, "Arrivi", "H1")
    _Excel_RangeWrite($oWorkbook, $oWorkbook.Activesheet, "Listino", "I1")
    _Excel_RangeWrite($oWorkbook, $oWorkbook.Activesheet, "Margine", "J1")
    _Excel_RangeWrite($oWorkbook, $oWorkbook.Activesheet, "Prezzo c&c", "K1")
    _Excel_RangeWrite($oWorkbook, $oWorkbook.Activesheet, "Prezzo Web", "L1")

EndFunc   ;==>_EXCEL_CREA


Func _ENTRA_DENTRO()
    ConsoleWrite('@@ (690) :(' & @MIN & ':' & @SEC & ') _ENTRA_DENTRO()' & @CR) ;### Function Trace

    Local $aLSetting = FileReadToArray(@ScriptDir & "\Temp_Espri\login.txt")

    If IsArray($aLSetting) Then
    Else
        MsgBox($MB_SYSTEMMODAL, "", "An error occurred when reading the file.")
        Return False
    EndIf

    Local $User_read = $aLSetting[0]
    Local $pass_read = $aLSetting[1]

    $oIE = _IECreate("https://auth.esprinet.com/sso/customer/login?returnUrl=%2Fsso%2Fcustomer%2Fissue%3Fwtrealm%3Dhttp%253a%252f%252fwww.esprinet.com%252fauthproxy%252ftoken%26wctx%3DWsFedOwinState%253dJ8R2lIV2yzUNGiWHknXBfOYfvUw-HvA51FosMyAfPw42HyxSviKkI9SXqngjTry7ww2CUXcZp2GcQfYe0t7lrZXl5rxkf05M7Wo08XVrs85xIXuOyNayOWfePOHv9rB_YHhqx08jnVHjadPxm-a29NUSpjFvkuZ18vFQUDRHNUKbYiTd05v02dkJzA3ewuRHtax-1iPd8pa4g7MRtGy0bWqazf04Cvq6TtFI1u5rUK4E6kkkkn7w_-qvCymfZ1Gh%26wa%3Dwsignin1.0%26wreply%3Dhttp%253a%252f%252fwww.esprinet.com%252fauthproxy%252fstatus", 0, 1, 1, 1) ; <--- 0011 invisible explorer  <--- 0111 visible explorer
    _IELoadWait($oIE, $iGTimeToCeck, $iGTimeOut)
    Local $oBtns = $oIE.document.GetElementsByTagName("input")
    For $oBtn In $oBtns
        $name = String($oBtn.name())
        $classname = String($oBtn.classname())

        If $name = "Username" Then
            _IEAction($oBtn, "click")
            _IEFormElementSetValue($oBtn, $User_read)
        EndIf
        If $name = "Password" Then
            _IEAction($oBtn, "click")
            _IEFormElementSetValue($oBtn, $pass_read)
        EndIf
        Sleep(1000)
        If $classname = "btn btn-primary btn-block" Then
            _IEAction($oBtn, "click")
        EndIf
    Next
    While 1
        Sleep(1000)
        Local $sText = _IEBodyReadText($oIE)
        If StringInStr($sText, "Sei connesso ad Esprinet") Then
            ExitLoop
        EndIf
    WEnd
    Sleep(500)
    _IELoadWait($oIE, $iGTimeToCeck, $iGTimeOut)
    _IENavigate($oIE, "http://www.esprinet.com/b2b/Ricerche/FantaRicerca/ElencoGruppi/", 1)
    _IELoadWait($oIE, $iGTimeToCeck, $iGTimeOut)
EndFunc   ;==>_ENTRA_DENTRO






; ==================== FUNZIONI ASSIMILABILI A UDF AGGIUNTIVA =============================================================


; #INDEX# ========================================================================
; Title .........: spider-esprinet.au3
; AutoIt Version : 3.3.14.2++
; Language ......: Italian
; Description ...: A collection of Function for spider
; Author ........: Faustf
; What do you do.: Write data in File
; Version .......: 0.0.1 BETA - Work in progress 23/03/2017
; Syntax ........: path name and path link remove first line and shift
; ================================================================================
Func _read_name_e_link_shift($PathName, $PathLink)
    ConsoleWrite('@@ (755) :(' & @MIN & ':' & @SEC & ') _read_name_e_link_shift()' & @CR) ;### Function Trace

    Local $aLGruppi_1 = FileReadToArray($PathName)
    If @error Then
        MsgBox(0, 'Info', 'Errrore lettura nomi Gruppo X' & @error)
    EndIf
    Local $aLGruppi_Link_1 = FileReadToArray($PathLink)
    If @error Then
        MsgBox(0, 'Info', 'Errrore lettura Link Gruppo X ' & @error)
    EndIf
    FileDelete($PathName)
    FileDelete($PathLink)
    For $I = 1 To UBound($aLGruppi_1) - 1
        _True_write_File($PathName, $aLGruppi_1[$I])
        _True_write_File($PathLink, $aLGruppi_Link_1[$I])
    Next
    Local $aLResult[2]
    If IsArray($aLGruppi_1) Then
        $aLResult[0] = $aLGruppi_1[0]
        $aLResult[1] = $aLGruppi_Link_1[0]

        Return $aLResult
    Else
        MsgBox(0, 'Errore', 'Non posso proseguire manca il link del gruppo 1 e/o i nomi del gruppo 1')
        $aLResult[0] = "END"
        Return $aLResult
    EndIf

EndFunc   ;==>_read_name_e_link_shift

; #INDEX# ========================================================================
; Title .........: spider-esprinet.au3
; AutoIt Version : 3.3.14.2++
; Language ......: Italian
; Description ...: A collection of Function for Logic of Gest
; Author ........: Faustf
; What do you do.: Write data in File
; Version .......: 0.0.1 BETA - Work in progress 23/03/2017
; Syntax ........:
; ================================================================================
Func _True_write_File($sFilePath, $sDataWrite, $iReturn = 0)
    ConsoleWrite('@@ (796) :(' & @MIN & ':' & @SEC & ') _True_write_File()' & @CR) ;### Function Trace
    If $iReturn = Default Then $iReturn = 0
    $file = FileOpen($sFilePath, 1)
    If $iReturn = 0 Then
        FileWrite($file, $sDataWrite & @CRLF)
    Else
        FileWrite($file, $sDataWrite)
    EndIf
    FileClose($file)
EndFunc   ;==>_True_write_File

; #INDEX# ========================================================================
; Title .........: GUI_Configure.au3
; AutoIt Version : 3.3.14.2++
; Language ......: Italian
; Description ...: A collection of Function for Logic of Gest
; Author ........: Faustf
; What do you do.: Remove Blank in array 1d
; Version .......: 0.0.1 BETA - Work in progress 15/03/2016
; Syntax ........:
; ================================================================================

Func _Remove_BlankIN_Array($arr_2)
    ConsoleWrite('@@ (819) :(' & @MIN & ':' & @SEC & ') _Remove_BlankIN_Array()' & @CR) ;### Function Trace

    For $I = UBound($arr_2) - 1 To 0 Step -1
        If $arr_2[$I] = "" Then
            _ArrayDelete($arr_2, $I)
        EndIf
    Next
    Return $arr_2
EndFunc   ;==>_Remove_BlankIN_Array

Func _User_ErrFunc($oError)
    ConsoleWrite('@@ (830) :(' & @MIN & ':' & @SEC & ') _User_ErrFunc()' & @CR) ;### Function Trace
    ; Do anything here.
    ConsoleWrite(@ScriptFullPath & " (" & $oError.scriptline & ") : ==> COM Error intercepted !" & @CRLF & _
            @TAB & "err.number is: " & @TAB & @TAB & "0x" & Hex($oError.number) & @CRLF & _
            @TAB & "err.windescription:" & @TAB & $oError.windescription & @CRLF & _
            @TAB & "err.description is: " & @TAB & $oError.description & @CRLF & _
            @TAB & "err.source is: " & @TAB & @TAB & $oError.source & @CRLF & _
            @TAB & "err.helpfile is: " & @TAB & $oError.helpfile & @CRLF & _
            @TAB & "err.helpcontext is: " & @TAB & $oError.helpcontext & @CRLF & _
            @TAB & "err.lastdllerror is: " & @TAB & $oError.lastdllerror & @CRLF & _
            @TAB & "err.scriptline is: " & @TAB & $oError.scriptline & @CRLF & _
            @TAB & "err.retcode is: " & @TAB & "0x" & Hex($oError.retcode) & @CRLF & @CRLF)
EndFunc   ;==>_User_ErrFunc

and other script similar (dirty copy)

 

Share this post


Link to post
Share on other sites

#6 ·  Posted

In which function does the error appear?

Share this post


Link to post
Share on other sites

#7 ·  Posted

Is function _True_write_File creating files?

Perhaps try to change:

$file = FileOpen($sFilePath, 1)

to

$file = FileOpen($sFilePath, 9)

 

Share this post


Link to post
Share on other sites

#8 ·  Posted (edited)

5 hours ago, faustf said:

the problem appear with this script

and other script similar (dirty copy)

 

@faustf so as usual, you go from "error with any script I run" in your first post to just this script and one other. And I am going to take a wild guess that you have not done anything to track down where in the script it is failing, am I correct? You have almost 900 lines, lines and even entire blocks of code commented out, are you sure you have not commented something out that you need? Is this your script, or one you simply copied this from somewhere, and don't know quite what it does?

Edited by JLogan3o13

√-1 2^3 ∑ π, and it was delicious!

Share this post


Link to post
Share on other sites

#9 ·  Posted (edited)

is random

but usally  in _True_write_File() stopped

http://it.tinypic.com/r/2uysx2u/9

 

@ModemJunki

i change  1  to 9 but  have  the same effect

 

is mine code , but i dont know  how start to do this problem

 

 

Edited by faustf

Share this post


Link to post
Share on other sites

#10 ·  Posted

_True_write_File is opening and closing the file to be written to.

Maybe it goes too fast and the file close is not written from buffer, then it tries to open and you get error.

Maybe try putting sleep(500) after FileClose($file)? If that works then adjust sleep down to the smallest amount you can get or 50 milliseconds, whichever is greater.
 

Func _True_write_File($sFilePath, $sDataWrite, $iReturn = 0)
    ConsoleWrite('@@ (796) :(' & @MIN & ':' & @SEC & ') _True_write_File()' & @CR) ;### Function Trace
    If $iReturn = Default Then $iReturn = 0
    $file = FileOpen($sFilePath, 1)
    If $iReturn = 0 Then
        FileWrite($file, $sDataWrite & @CRLF)
    Else
        FileWrite($file, $sDataWrite)
    EndIf
    FileClose($file)
    Sleep(500)
EndFunc   ;==>_True_write_File

 

Share this post


Link to post
Share on other sites

#11 ·  Posted

thankz i think i find a problem , is one path have  not @_scriptdir  but relative path wrong

:P

 

 

1 person likes this

Share this post


Link to post
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