Jump to content

Recommended Posts

Posted

I'm wondering why my script isn't working properly, right click on a file, and select : Encrypt, and it shows the full path to the file you clicked on, but the Decrypt option, does not work, and does not return the full math, ideas why?

RegWrite("HKEY_CLASSES_ROOT\*\shell\Encrypt\command", '', 'REG_SZ', '"' & @ScriptFullPath & '" "%1"')
    RegWrite("HKEY_CLASSES_ROOT\*\shell\Encrypt", '', 'REG_SZ', "Encrypt")

    RegWrite("HKEY_CLASSES_ROOT\*\shell\Decrypt\command", '', 'REG_SZ', '"' & @ScriptFullPath & '" "%2"')
    RegWrite("HKEY_CLASSES_ROOT\*\shell\Decrypt", '', 'REG_SZ', "Decrypt")


    If $CmdLine[0]=1 Then
    MsgBox ('', 'Test', 'encrypt ' & $CmdLine[1])
    EndIf

    If $CmdLine[0]=2 Then
    MsgBox ('', 'Test', 'decrypt ' & $CmdLine[2])
    EndIf
Posted

Change %2 to %1.

UDF List:

  Reveal hidden contents

Updated: 22/04/2018

Posted

If I do that, it will still run this line:

MsgBox ('', 'Test', 'encrypt ' & $CmdLine[1])

Instead of this one:

MsgBox ('', 'Test', 'decrypt ' & $CmdLine[2])

Posted

Try what guinness suggested and change your logic.  I have never done this but it seems that each time you right click on a file you should be getting a new instance of the script.

Forum Rules         Procedure for posting code

"I like pigs.  Dogs look up to us.  Cats look down on us.  Pigs treat us as equals."

- Sir Winston Churchill

Posted

What do you get from the msgbox using the decrypt menu option?

If I posted any code, assume that code was written using the latest release version unless stated otherwise. Also, if it doesn't work on XP I can't help with that because I don't have access to XP, and I'm not going to.
Give a programmer the correct code and he can do his work for a day. Teach a programmer to debug and he can do his work for a lifetime - by Chirag Gude
How to ask questions the smart way!

  Reveal hidden contents

I hereby grant any person the right to use any code I post, that I am the original author of, on the autoitscript.com forums, unless I've specifically stated otherwise in the code or the thread post. If you do use my code all I ask, as a courtesy, is to make note of where you got it from.

Back up and restore Windows user files _Array.au3 - Modified array functions that include support for 2D arrays.  -  ColorChooser - An add-on for SciTE that pops up a color dialog so you can select and paste a color code into a script.  -  Customizable Splashscreen GUI w/Progress Bar - Create a custom "splash screen" GUI with a progress bar and custom label.  -  _FileGetProperty - Retrieve the properties of a file  -  SciTE Toolbar - A toolbar demo for use with the SciTE editor  -  GUIRegisterMsg demo - Demo script to show how to use the Windows messages to interact with controls and your GUI.  -   Latin Square password generator

Posted (edited)

Wouldn't the number of parameters in $CmdLine be the same in both.

$CmdLine[0] returns the number of parameters on the command line.

Try

RegWrite("HKEY_CLASSES_ROOT\*\shell\Encrypt\command", '', 'REG_SZ', '"' & @ScriptFullPath & '" "%1"')
RegWrite("HKEY_CLASSES_ROOT\*\shell\Encrypt", '', 'REG_SZ', "Encrypt")

RegWrite("HKEY_CLASSES_ROOT\*\shell\Decrypt\command", '', 'REG_SZ', '"' & @ScriptFullPath & '" "%2"')
RegWrite("HKEY_CLASSES_ROOT\*\shell\Decrypt", '', 'REG_SZ', "Decrypt")


If $CmdLine[1]=1 Then
    MsgBox ('', 'Test', 'encrypt ' & $CmdLine[2])
EndIf

If $CmdLine[1]=2 Then
    MsgBox ('', 'Test', 'decrypt ' & $CmdLine[2])
EndIf

or

RegWrite("HKEY_CLASSES_ROOT\*\shell\Encrypt\command", '', 'REG_SZ', '"' & @ScriptFullPath & '" "%1"')
RegWrite("HKEY_CLASSES_ROOT\*\shell\Encrypt", '', 'REG_SZ', "Encrypt")

RegWrite("HKEY_CLASSES_ROOT\*\shell\Decrypt\command", '', 'REG_SZ', '"' & @ScriptFullPath & '" "%2"')
RegWrite("HKEY_CLASSES_ROOT\*\shell\Decrypt", '', 'REG_SZ', "Decrypt")


If $CmdLine[2]=1 Then
    MsgBox ('', 'Test', 'encrypt ' & $CmdLine[1])
EndIf

If $CmdLine[2]=2 Then
    MsgBox ('', 'Test', 'decrypt ' & $CmdLine[1])
EndIf
Edited by LongBowNZ
Posted

Do this.

RegWrite("HKEY_CLASSES_ROOT\*\shell\Encrypt\command", '', 'REG_SZ', '"' & @ScriptFullPath & '" "encrypt %1"')
RegWrite("HKEY_CLASSES_ROOT\*\shell\Encrypt", '', 'REG_SZ', "Encrypt")

RegWrite("HKEY_CLASSES_ROOT\*\shell\Decrypt\command", '', 'REG_SZ', '"' & @ScriptFullPath & '" "decrypt %1"')
RegWrite("HKEY_CLASSES_ROOT\*\shell\Decrypt", '', 'REG_SZ', "Decrypt")


If $CmdLine[0] = 1 Then
    MsgBox('', 'Test', $CmdLine[1])
EndIf

If I posted any code, assume that code was written using the latest release version unless stated otherwise. Also, if it doesn't work on XP I can't help with that because I don't have access to XP, and I'm not going to.
Give a programmer the correct code and he can do his work for a day. Teach a programmer to debug and he can do his work for a lifetime - by Chirag Gude
How to ask questions the smart way!

  Reveal hidden contents

I hereby grant any person the right to use any code I post, that I am the original author of, on the autoitscript.com forums, unless I've specifically stated otherwise in the code or the thread post. If you do use my code all I ask, as a courtesy, is to make note of where you got it from.

Back up and restore Windows user files _Array.au3 - Modified array functions that include support for 2D arrays.  -  ColorChooser - An add-on for SciTE that pops up a color dialog so you can select and paste a color code into a script.  -  Customizable Splashscreen GUI w/Progress Bar - Create a custom "splash screen" GUI with a progress bar and custom label.  -  _FileGetProperty - Retrieve the properties of a file  -  SciTE Toolbar - A toolbar demo for use with the SciTE editor  -  GUIRegisterMsg demo - Demo script to show how to use the Windows messages to interact with controls and your GUI.  -   Latin Square password generator

Posted

Then write your script to do that, you can't do it the way you tried it originally because you did it wrong.

If I posted any code, assume that code was written using the latest release version unless stated otherwise. Also, if it doesn't work on XP I can't help with that because I don't have access to XP, and I'm not going to.
Give a programmer the correct code and he can do his work for a day. Teach a programmer to debug and he can do his work for a lifetime - by Chirag Gude
How to ask questions the smart way!

  Reveal hidden contents

I hereby grant any person the right to use any code I post, that I am the original author of, on the autoitscript.com forums, unless I've specifically stated otherwise in the code or the thread post. If you do use my code all I ask, as a courtesy, is to make note of where you got it from.

Back up and restore Windows user files _Array.au3 - Modified array functions that include support for 2D arrays.  -  ColorChooser - An add-on for SciTE that pops up a color dialog so you can select and paste a color code into a script.  -  Customizable Splashscreen GUI w/Progress Bar - Create a custom "splash screen" GUI with a progress bar and custom label.  -  _FileGetProperty - Retrieve the properties of a file  -  SciTE Toolbar - A toolbar demo for use with the SciTE editor  -  GUIRegisterMsg demo - Demo script to show how to use the Windows messages to interact with controls and your GUI.  -   Latin Square password generator

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
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...