Pagina 1 di 2

[RISOLTO] Mblock Setup.py

Pubblicato: 5 aprile 2017 - 12:12
di agatoi
Ciao a tutti,

Di seguito è riportato il file setup.py per il software Mblock. Basato su Scratch, Mblock è un software di programmazione per Mbots. I moduli Mbots stessi sono costruiti attorno alle schede Arduino.

Tieni presente che dopo l'installazione, alla prima esecuzione ti verrà chiesto di definire un accesso di rete.

E poi c'è anche l'installazione dei driver Arduino e di altri componenti. Se qualcuno ha voglia di aggiungerli alla lista...

Link per scaricare il file .exe: http://www.mblock.cc/

Codice: Seleziona tutto

# -*- coding: utf-8 -*-
from setuphelpers import *

uninstallkey = []

#uninstallkey = ['{1E9DFEBB-4088-4693-A521-C755318BD492}_is1']
#uninstallstring=""C:\Program Files\mBlock\unins000.exe" /SILENT"

#def install():
#    print('installing aiz-mblock')
#    run(r'"mBlock_win_V3.4.6.exe" /VERYSILENT')

def install():

    versionpaquet = control['version'].split('-',1)[0]

    print('installing aiz-mblock')
    install_exe_if_needed("mBlock_win_V"+versionpaquet+".exe",
                        silentflags="/VERYSILENT",
                        key="{1E9DFEBB-4088-4693-A521-C755318BD492}_is1",
                        min_version=versionpaquet,
                        killbefore="mBlock.exe")

    #suppression de la clé de désinstallation pour pouvoir faire une désinstallation silencieuse. Voir def uninstall():
    uninstallkey.remove("{1E9DFEBB-4088-4693-A521-C755318BD492}_is1")

    #suppression du raccourci bureau
    remove_desktop_shortcut('mBlock')

#Pour une désinstallation silencieuse.
def uninstall():
    print('uninstalling aiz-mblock')
    run(r'"C:\Program Files\mBlock\unins000.exe" /VERYSILENT')
    

Re: Mblock Setup.py

Pubblicato: 10 aprile 2017 - 22:21
di sfontenau
Per installare un driver con Windows:

Esempio:

Codice: Seleziona tutto

run(r'C:\Windows\System32\pnputil.exe -i -a %s\esaousb.inf' % os.path.dirname(os.path.realpath(__file__)))

Per un driver la cui firma visualizza un avviso di Windows:

Per prima cosa, vai su regedit e controlla le chiavi presenti in "certificates"
Installa il driver manualmente (devi accettare di installare il driver)

Successivamente, per trovare la chiave del certificato (che è stata aggiunta), dovrai seguire il seguente percorso:
→ HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SystemCertificates\TrustedPublisher\Certificates

È sufficiente aggiungere la chiave prima di aggiungere le informazioni sul driver.

Se il conducente non ha firmato, dovrai firmarlo tu stesso

Re: Mblock Setup.py

Pubblicato: 7 novembre 2017 - 14:35
di gaelds
Esiste un modo per forzare l'utilizzo della lingua francese durante l'installazione di mblock?

Re: Mblock Setup.py

Pubblicato: 7 novembre 2017 - 19:55
di sfontenau
Consiglio di eseguire un regshot e confrontare i valori prima e dopo il cambio di lingua per capire dove avviene la modifica.

Potresti quindi essere in grado di modificare il valore in session_setup.

Re: Mblock Setup.py

Pubblicato: 8 novembre 2017 - 16:36
di gaelds
Ho appena provato, ma non credo che la soluzione sia nel file dei risultati...
http://www.domsortais.fr/wapt/res0000.txt

E nonostante l'installazione dei driver Arduino che dovrebbero essere inclusi nel pacchetto, quando si avvia il robot Arduino, Windows chiede di installare il suo driver.

Re: Mblock Setup.py

Pubblicato: 8 novembre 2017 - 21:59
di sfontenau
Devi includere %appdata% nel ciclo di scansione con regshot

Re: Mblock Setup.py

Pubblicato: 9 novembre 2017 - 11:58
di gaelds
Anche questo non funziona, vabbè.

Re: Mblock Setup.py

Pubblicato: 10 novembre 2017 - 00:08
di sfontenau
Per tua informazione, le due cartelle che comunicano a mBlock la lingua selezionata sono:

%appdata%\com.makeblock.Scratch3.4.11\Local Store\mBlock\resource_version.xml e
%appdata%\com.makeblock.Scratch3.4.11\Local Store\mBlock\locale

Re: Mblock Setup.py

Pubblicato: 10 novembre 2017 - 09:21
di gaelds
Grazie! Ci proverò. Ho finito per installare manualmente le estensioni e il driver perché copiarli in programfiles\mBlock\ext\libraries\ non era sufficiente. Le estensioni sembrano installate, ma trasferirle al robot non funziona. E dobbiamo reinstallare il nostro driver Arduino perché quello nel tuo pacchetto non deve essere compatibile.

Re: Mblock Setup.py

Pubblicato: 26 dicembre 2017 - 17:29
di myosotis
Ciao.

Prima di tutto, complimenti per tutto il lavoro che hai già svolto!

Come gaelds, anch'io ho un grosso problema con l'impostazione della lingua francese in mBlocks. Questo software non funziona proprio nel modo consueto. Sembra che il cambio di lingua dell'interfaccia avvenga tramite una colonna specifica in un file .xlsx! (locale.xlsx, colonna E)


@sfonteneau: ho installato mBlock v3.4.11 e non riesco a trovare alcuna traccia dei percorsi che hai indicato, ovvero

%appdata%\com.makeblock.Scratch3.4.11\Local Store\mBlock\resource_version.xml.
%appdata%\com.makeblock.Scratch3.4.11\Local Store\mBlock\locale

è effettivamente presente in C:\Program Files (x86)\mBlock\assets
, ed esiste effettivamente un file locale.xlsx situato in C:\Program Files (x86)\mBlock\locale e in %AppData%\Roaming\com.makeblock.Scratch3.4.11\Local Store\mBlock\locale.

Tuttavia, non è lì che risiede il problema perché (1) questi file non vengono modificati quando si cambia lingua, (2) anche se imposto la lingua (francese) per l'utente1 e copio questi file nel profilo di un altro utente, non cambia nulla. Si avvia in inglese o nella lingua precedentemente selezionata dall'utente2 (quindi la scelta della lingua è effettivamente collegata all'utente corrente).

...mentre scrivevo questo, mi è venuta in mente la soluzione: una rapida scansione del registro e di %AppData%\Roaming\ ha evidenziato IL file necessario per forzare il francese. Si tratta di makeblock.sol , situato in %AppData%\Roaming\com.makeblock.Scratch3.4.11\Local Store\#SharedObjects\


... Suppongo che, in linea di massima, dovrò prima creare %AppData%\Roaming\com.makeblock.Scratch3.4.11\Local Store\#SharedObjects\ e poi copiare lì il file makeblock.sol, che includeremo nel pacchetto. Tuttavia, ho paura di commettere un errore perché non sono molto meticoloso.

sfonteneau, per evitare di perdere tempo e per fare le cose per bene, potresti aiutarci a scrivere il session_setup?

PS: Sembra che il software debba anche accedere a AppData%\Roaming\com.makeblock.Scratch3.4.11\Local Store\locale\locale.xlsx quando si cambia lingua. Ho anche eseguito procmon durante la mia verifica e vedo operazioni di lettura/scrittura su questo file dopo la creazione di makeblock.sol. Scusa.