Benvenuto Ospite Cerca | Topic Attivi | Utenti | | Log In | Registra

[DOS] - Aiuto su Apertura finestre sovrapposte windows Opzioni
faberf
Inviato: Thursday, March 15, 2012 7:43:16 AM
Rank: Member

Iscritto dal : 9/8/2010
Posts: 13
Un saluto a tutti

Ho un piccolo problema su in file in .bat sul quale spero potrete aiutarmi.

Ho fatto una script con il quale effettuo l'apertura in successione di due cartelle di file ( visualizzazione del contenuto ).

-- La prima cartella "Cartella1" si dovrebbe aprire a tutto schermo ( e ho utilizzato l'istruzione start\max Cartella1)
-- La seconda cartella "Cartella2" si dovrebbe aprire in formato ridotto ( ma non icona) , sovrapposta alla prima ( e ho utilizzato l'istruzione start Cartella2


Avviene che entrambe si aprono in formato max. o che l'apertura di Cartella2 ridotta e sovrapposta a Cartella1 a tutto schermo ( come vorrei) si verifica solo qualche volta se facedo partire il .bat più volte.

Qualcuno sa dirmi cosa devo scrivere dopo start (o altro modo) per fare in modo di aprire Cartella2 in modo ridotto?
(Praticamente per riportare al modo stadard le dimensioni di apertura delle finestre ridotte)

Per maggiore chiarezza riporto le rige dello script impostato:

@echo off
cls

echo.
echo.
REM: -------------------------------------------------
REM: === PROVA SEGMENTO Cartelle sovrapposte
REM: -------------------------------------------------

Echo ----------------- Apertura (visualizzazione contenuto) "cartella1" ---
Start\max "" "Cartella1"

Echo ----------------- Apertura (visualizzazione contenuto) "cartella2" ---
Start "" "Cartella2"
pause


-- Grazie a chiunque vorrà aiutarmi--

Sponsor
Inviato: Thursday, March 15, 2012 7:43:16 AM

 
bobo779256
Inviato: Tuesday, March 20, 2012 12:04:14 PM

Rank: AiutAmico

Iscritto dal : 4/8/2011
Posts: 4,088
Non credo si possa fare da batch,

però tempo fa trovai un programmino della Nirsoft con cui si possono fare delle belle cosine, tipo anche ridimensionare le finestre delle applicazioni che si aprono.

Il programmino è Nircmd, c'è la versione a 32 e 64 bit, non richiede installazione e basta metterlo in un percorso compreso nel 'path' di Win o nella cartella da cui far partire il file bat.

Ad esempio:
Code:
nircmd exec show "notepad"
nircmd win setsize foreground 5 5 200 200

messi in un file *.bat apre il blocconote alla posizione X 5, Y 5, di dimensioni 200 x 200 pixel

C'è da studiare un po' tutti i vari parametri del comando, e ce ne sono un fottio, e sperimentare.

Se non hai trovato alternative, può essere utile.

Ciao
bobo779256
Inviato: Tuesday, March 20, 2012 12:48:46 PM

Rank: AiutAmico

Iscritto dal : 4/8/2011
Posts: 4,088
Un esempio più simile al tuo caso:
Code:
nircmd exec show "explorer.exe" /n,/e,/root,c:\Windows\Media
nircmd wait 100
nircmd win setsize foreground 5 5 400 400

Apre una nuova finestra di explorer puntando alla cartella 'c:\Windows\Media', attendendo 100 msec per il ridimensionamento di 400x400 pixel a 5,5 XY
faberf
Inviato: Saturday, March 24, 2012 8:31:00 PM
Rank: Member

Iscritto dal : 9/8/2010
Posts: 13
Grazie "bobo

Intanto che aspettavo che un volenteroso mi aiutasse ho smanettato un pò
e alla fine sono riuscito anche a prendere in giro Windows.

Sospettavo fosse un problema di "tempistica" tra processore e scheda video.
Difatti ho risolto facendogli perdere un pò di tempo,
impostando Start/min Cartella2 seguito da Start Cartella2
poi interponendo uno script contatore Ping per avere un ritardo di 2 secondi
(è il tempo minimo - lo imposto a 1 secondo già non funziona più )

Questo è lo script completo a beneficio di chiunque in cerca di spunti
volesse smembrarlo:


@Echo off

rem: Apertura Cartella1 Massimizzata
Start/MAX "" "Cartella1"

rem: Apertura Cartella2 Minimizzata (icona)
Start/min "" "Cartella2"

rem: Ritardo 2 secondi per apertura cartella sovrapposta ( Dove 2 è il numero di secondi )
@Ping 127.0.0.1 -n 2 -w 1000 >nul

rem: Apertura Cartella2 nel formato medium standard del s.o. sovrapposta a cartella1
Start "" "Cartella2"



E' un metodo molto artigianale e certamente ci sarà una soluzione
ancora più semplice nell'ambito dei comandi dos comuni ma pare che funzioni bene,
MA NON E' DETTO: non ho finito di provarlo su atri computer
e quindi mi tengo da parte il tuo codice nircmd che funziona benissimo Applause
e per il quale ti ringrazio ( li proverò entrambi ).
bobo779256
Inviato: Monday, March 26, 2012 11:56:55 AM

Rank: AiutAmico

Iscritto dal : 4/8/2011
Posts: 4,088
Code:
@ECHO OFF
rem --#------------------------------------------------------------------
rem --#   Script  : sleep.BAT
rem --#   Attende per tot secondi
rem --#   Ogni 2 pings al localhost corrispondono circa ad 1 secondo
rem --#
rem --#   Uso   : sleep.BAT # {# num di secondi da attendere}
rem --#------------------------------------------------------------------

ECHO %TIME%

FOR /l %%a IN (%1,-1,1) do (ECHO 1 >NULL %%as&ping -n 2 -w 1 127.0.0.1>NUL)

ECHO %TIME%

La tua soluzione è più o meno ciò che trovai tempo fà, cioè un bat che simula il comando sleep che chissà perchè è compreso solo in un sdk di Windows 2003 Resource Kit (comunque scaricabile e installabile).
L'ho messo nella libreria dei miei bat richiamabile in altri bat creati col semplice comando 'sleep.bat 12', dove 12 è il numero di secondi di attesa modificabile di volta in volta.

Complimenti per la tenacia, ormai i file batch si usano molto poco, ma si possono comunque fare delle belle cosine se ci si applica...
Utenti presenti in questo topic
Guest


Salta al Forum
Aggiunta nuovi Topic disabilitata in questo forum.
Risposte disabilitate in questo forum.
Eliminazione tuoi Post disabilitata in questo forum.
Modifica dei tuoi post disabilitata in questo forum.
Creazione Sondaggi disabilitata in questo forum.
Voto ai sondaggi disabilitato in questo forum.

Main Forum RSS : RSS

Aiutamici Theme
Powered by Yet Another Forum.net versione 1.9.1.8 (NET v2.0) - 3/29/2008
Copyright © 2003-2008 Yet Another Forum.net. All rights reserved.