Newsgroup: it.comp.lang.visual-basic
Titolo: Non riesco a salvare lo sfondo del desktop in maniera permanente + posizionamentos

ciao ho fatto un programma x cambiare lo sfondo
leggendo nei vecchi post ho trovato lo script x aggiornare il registro e
salvarlo permanentemente, però evidentemente canno qualcosa, xchè quando
avvio windows lo sfondo nun ce sta :-)
il codice è il seguente:
Private Declare Function RegOpenKey Lib "advapi32.dll" Alias "RegOpenKeyA"
(ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
Private Declare Function RegSetValueEx Lib "advapi32" Alias "RegSetValueExA"
(ByVal hKey As Long, ByVal lpValueName As String, ByVal Reserved As Long,
ByVal dwType As Long, ByVal lpData As String, ByVal cbData As Long) As Long
Private Declare Function RegCloseKey Lib "advapi32" (ByVal hKey As Long) As
Long
Private Const HKEY_CURRENT_USER = &H80000001
Private Const REG_SZ = 1
Dim r As Long
Dim hKey As Long, KeyValueLength As Long, Tiled As Long
Dim tilevalue As String
tilevalue = "1" ' questa non l'ho capita
Tiled = IIf(tilevalue, 1, 0)
KeyValueLength = Len(tilevalue) + 1
r = RegOpenKey(HKEY_CURRENT_USER, "Control Panel\desktop", hKey)
r = RegSetValueEx(hKey, "scirpaper", 0, REG_SZ, Tiled, KeyValueLength)
r = RegCloseKey(hKey)
'e poi x salvare nello schermo uso
nomesfondo="pippo.bmp"
percorsosfondo="c:\windows ecc ecc ecc...."
Call SavePicture(LoadPicture(percorsosfondo), nomesfondo)
SystemParametersInfo ByVal SPI_SETDESKWALLPAPER, ByVal 0&, ByVal nomesfondo,
SPIF_UPDATEINIFILE
Inoltre non ho capito qual'è il valore da settare x posizionare lo sfondo
nelle 3 opzioni:  centrato, affiancato, nonricordoilnome
ps funziona con tutti i windows il salvamentos nel registro?
grazie 1000
ciaociao

 avvio windows lo sfondo nun ce sta :-)
Non so dove hai trovato quella roba là, ma il modo corretto di modificare lo
sfondo è una chiamata all'API (una riga di codice).
Trovi esempi sul sito comune (vedi firma)
Ciao
--
Math Parser : 
http://www.neodatatype.net
Sito Comune : 
http://www.it-lang-vb.net


avevo visto anche li
ora riguardo, ho trovato questi 2
http://www.it-lang-vb.net/download.asp?file=Archivio/Sorgenti/WallPapr.zip&ID=136
http://www.it-lang-vb.net/download.asp?file=Archivio/Sorgenti/WallPapr.zip&ID=136
una domandina sul sito comune, a cosa serve la voce sorgenti?
cliccando mi aggiorna il frame di sinistra, c'è il target sbagliato?

 cliccando mi aggiorna il frame di sinistra, c'è il target sbagliato?
Cliccando su sorgenti il frame di dx elenca tutti i progetti che hanno i
sorgenti inclusi.
P.S.: quando posti un url lungo è consigliabile usare qualcosa come
www.makeashorterlink.com
 o 
www.snurl.com
: offrono l'url del servizio da
aggiungere ai "preferiti" e se da una pagina ci vai su accorciano l'url.


 l'url.
hai ragione, non pensavo scendesse a capo

 ma WPStyle non č definito, cos'č?
ah anche SetWallpaperStyle non č definita
ho cercato nelle api ma non c'č
x cercarla nel file che ho scaricato ho fatto ctrl+F e ho messo cerca
nell'intero progetto, cosě doveva trovarmela se c'era, no?

 nell'intero progetto, cosě doveva trovarmela se c'era, no?
Ancora una volta non so cos'accidenti stai guardando.
Il file scaricato dai due link da te postati (che poi sono lo stesso) ha
tutto quello che ti serve per cambiare lo sfondo, non so perchč sei andato a
cercare roba astrusa altrove.
Se poi ti servono le dichiarazioni delle funzioni dell'API scaricati
l'apiguide e l'apiviewer da 
www.allapi.net
.
Non so quale sia il file che hai scaricato ma scommetto che la dichiarazione
c'č addirittura nel vetusto apiviewer di VB.


 l'apiguide e l'apiviewer da 
www.allapi.net
.
l'ho scaricato
non l'ho mai usato quindi non so se ho fatto giusto
ho aperto il file Win32api.apv
e mi ha dato la lista delle api e dei tipi
e non ho trovato WPStyle
e SetWallpaperStyle
non so che pesci pigliare :-)

>
cmq penso che il problema sia che quando parte non mi trova questi file:
risoluzione schermo.bas
startek.bas :-)
picformat32.ocx
nslock16bvb5.ocx (io ho il vb6 cmq)
che me li cerca dove è installato il mio vb
eventualmente, come faccio a metterli?

 nslock16bvb5.ocx (io ho il vb6 cmq)
Anche questi non so cosa siano: i link che *tu* hai indicato *non*
contengono niente che usi 'sta roba, ma ha tutto ciò che è necessario a
cambiare il wallpaper: è *un*solo* file .bas con una funzione da 4 righe.


 righe.
non lo so, aprendo il secondo file, non quello fatto da te
ovvero DWAC1010.zip
mi dice che mancano tutti quei file
cmq aprendo l'altro file WallPapr.zip sono riuscito ad assegnare lo sfondo
fisso
ed è quel file che ha il bas con poche righe che dici
l'altro zip contiene molta roba e mi ci sono perso :-)
quindi mi rimarrebbe solo di capire come settare la proprietà x il
posizionamento dello schermo
ciaociao