_ExtensionAssociate()

« Older   Newer »
  Share  
xMasteRx
CAT_IMG Posted on 13/4/2011, 01:46     +4   +1   -1




Dal titolo avete capito cosa fa...

La funzione:
CODICE
Func _ExtensionAssociate($r_Ext, $r_PatchEXE, $r_Descrizione, $r_PatchICON="", $r_PatchICON_N=0, $r_2ndOpenMode="", $r_3rdOpenMode="")
       ;by xMasteRx at autoit.forumcommunity.net
       RegWrite("HKCR\."&$r_Ext)
       RegWrite("HKCR\."&$r_Ext, "", "REG_SZ", $r_Ext&"File")
       RegWrite("HKCR\"&$r_Ext&"File\shell\open\command\", "", "REG_EXPAND_SZ", $r_PatchEXE&' %1')
       If $r_PatchICON="" Then
               RegWrite("HKCR\"&$r_Ext&"File\DefaultIcon\", "", "REG_EXPAND_SZ", $r_PatchEXE&",0")
       Else
               RegWrite("HKCR\"&$r_Ext&"File\DefaultIcon\", "", "REG_EXPAND_SZ", $r_PatchICON&","&$r_PatchICON_N)
       EndIf
       If Not $r_2ndOpenMode="" Then
               RegWrite("HKCR\"&$r_Ext&"File\shell\"&$r_2ndOpenMode&"\command\", "", "REG_EXPAND_SZ", $r_PatchEXE&' %1 '&$r_2ndOpenMode)
       EndIf
       If Not $r_3rdOpenMode="" Then
               RegWrite("HKCR\"&$r_Ext&"File\shell\"&$r_3rdOpenMode&"\command\", "", "REG_EXPAND_SZ", $r_PatchEXE&' %1 '&$r_3rdOpenMode)
       EndIf
       RegWrite("HKCR\"&$r_Ext&"File", "", "REG_SZ", $r_Descrizione)
       If Not (@OSVersion="WIN_7" Or @OSVersion="WIN_VISTA") Then RegWrite("HKCR\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\."&$r_Ext, "Progid", "REG_SZ", $r_Ext&"File")
EndFunc


Esempio di uso:
Script secondario usando la funzione:
CODICE
_ExtensionAssociate("test", @ScriptDir&"\Program.exe", "File di test", "", 0, "EDIT", "PRINT")


Script Program.exe che dovrà essere compilato:
CODICE
If $CmdLine[0]>0 Then
       For $x=1 To $CmdLine[0]
               MsgBox(0, $x, $CmdLine[$x])
       Next
Else
       MsgBox(0, "$CmdLine[0]=0; $CmdLineRaw=", $CmdLineRaw)
EndIf

Infine create un file .test e apritelo lol, e guardate il menù di click destro le opzioni Stampa e Edit, come imposti nei ultimi due parametri della funzione ;)
PS: Se lasciate il campo $r_PatchICON vuoto, la funzione imposta l'icona dell'eseguibile come icona per la estensione
 
Top
Gianlu-thebest
CAT_IMG Posted on 9/6/2011, 15:15     +1   -1




g00d w0rk!

Mi sarà utile per le associazioni dei file in mmp :)
 
Top
xMasteRx
CAT_IMG Posted on 9/6/2011, 17:46     +1   -1




ok :D
 
Top
Sora2000
CAT_IMG Posted on 10/6/2011, 17:19     +1   -1




xMasteRx scusa una cosa, ma per toglierla l'estenzione, devo sostituire RegWrite Con RegDelete?
 
Top
xMasteRx
CAT_IMG Posted on 10/6/2011, 17:20     +1   -1




ehm tecnicamente sì
comunque questa associazione è stata creata con la mia funzione?
 
Top
Aaly
CAT_IMG Posted on 11/7/2011, 01:56     +1   +1   -1




Ma lo sai quanto ti voglio bene? ç_________ç
Un +1 te lo meriti.
 
Top
xMasteRx
CAT_IMG Posted on 11/7/2011, 01:57     +1   -1




CITAZIONE (Aaly @ 11/7/2011, 02:56) 
Ma lo sai quanto ti voglio bene? ç_________ç
Un +1 te lo meriti.

*_*
 
Top
marcovn
CAT_IMG Posted on 26/11/2012, 15:41     +1   -1




Grazie per l'udf ma non c'ho capito nulla xD

Il primo codice lo salvo come : udf.au3

e il secondo e il terzo?

Se qualcuno potesse spiegarmi passo per passo cosa bisogna fare gli sarei immensamente grato :D
 
Top
xMasteRx
CAT_IMG Posted on 26/11/2012, 15:46     +1   -1




CITAZIONE (marcovn @ 26/11/2012, 15:41) 
Grazie per l'udf ma non c'ho capito nulla xD

Il primo codice lo salvo come : udf.au3

e il secondo e il terzo?

Se qualcuno potesse spiegarmi passo per passo cosa bisogna fare gli sarei immensamente grato :D

Ma asd. Hai almeno letto cosa ho scritto? lol
Non è una UDF (anzi lo è, ma non è un assieme di funzioni, soltanto una), è soltanto una funzione che copi ed incolli nel tuo script come un'altra funzione qualsiasi. Il secondo ed il terzo spoiler di codice sono come ho detto soltanto esempi d'uso nel caso non capissi i parametri :)
1- Leggi la parte che contiene la parte scritta in italiano del topico, non soltanto la parte in autoit
2- Incolla la funzione sul tuo script
3- La usi asd
 
Top
8 replies since 13/4/2011, 01:46   440 views
  Share