Sandboxie-Plus Troubleshooting wizard (upcomming new feature)

Discussion in 'Sandboxie (SBIE Open Source) Plus & Classic' started by DavidXanatos, May 26, 2023.

  1. DavidXanatos

    DavidXanatos Developer

    Joined:
    Sep 6, 2006
    Posts:
    2,524
    Location:
    Viena
    We should start looking into adding a troubleshooting wizard to sandboxie-plus, I was thinking about a multi level approach:
    the wizard would come with a list of build in capabilities,
    and in addition to those it would be able to always check online for the latest troubleshooting recommendations,
    and it should get an option to submit a issue automatically not sure if we can integrate this with github, perhaps using some sort of bot.
    but that would be best .... the wizard would submit it to sandboxie-plus.com from where a github bot would pull new issues every x min and post them.
    Although I'm not sure about the back channel, the user probably would need to specify an email and then if we close an issue the bot should use a script on sandboxie-plus.com to send the user a notification that the issue is now resolved, eider by a new build or by updated troubleshooting instructions.

    The work flow would probably be something like this

    Open Troubleshooting Wizard

    Select from a rough issue classification whats the problem,
    select from a follow up list the exact issue,

    Select sandbox to apply workarounds to
    cycle through a few runs of the problematic program with different workarounds requesting feed back which one if any worked.

    Detecting issues automatically would be nice but for many issues its not possible without using advanced AI so we will use the user to evaluate the results.

    What do you think?
     
  2. Freki123

    Freki123 Registered Member

    Joined:
    Jan 20, 2015
    Posts:
    337
    Any help for users is good. What I also think is users shouldn't expect that every niche browser/portable program will run and be supported. Your time is not limitless try to keep the known big browers/programs working but you can't do it for every program unless you plan to get a heart attack :D
     
  3. stapp

    stapp Global Moderator

    Joined:
    Jan 12, 2006
    Posts:
    27,169
    Location:
    UK
    I like the idea in principle.

    So the user would apply the suggested workarounds manually until a satisfactory result is achieved then report back? How?
    From within the GUI?

    Would any info be transmitted during the troubleshooting wizard?
     
  4. DavidXanatos

    DavidXanatos Developer

    Joined:
    Sep 6, 2006
    Posts:
    2,524
    Location:
    Viena
    @stapp

    So the plan would be that the user would first select offline or online troubleshooting (only available with a supporter certificate)
    For now the way those would work would be very simmilar,
    just that the offline database would be small and generic,
    while in the online mode a verbose up to date database would be downloaded.
    Perhaps later a more online approach could be added with some AI may be idk....

    With that selected the user would pick a known issue from a list and
    1) if for that issue a fix is known it would be applied, done...
    2) when for that issue multiple potential mitigation are known they would be applied temporarily the user would be ask to re run his test case and report the result 2a) on success, done...
    2b) on failure go to 2 and try the next approach, if none are left, done... with failure

    If 2 fails or no workaround is known the user would be offered the option to submit a bug report, that would then have the option to collect relevant data and upload it to sandboxie-plus.com or generate test for a git-hub issue which only needs to be pasted on git-hub by the user.
    I'm thinking if possible to auto generate github issues from submitted bug reports.
    In case of an automatically submitted bug report the users would have the option to enter an email address on which they would be notified when a fix is available, be that a new build or just an update to the online troubleshooting database, in the later case the user would need to re run the wizard to apply the new fix.


    @all
    I need input please suggest common issues that should be included in the wizard

    I'll start:
    a) an MSI Installer does not work
    b) my webbrowser is not supported
    c) I am getting a cryptic SBIExxxx message
    d) Webcam / sound is not working when sandboxed
    e) some application does not work in a security hardened box
    f) some application does not work in a privacy enhanced box
    g) some application does not work in a regular box

    what elseo_O
     
  5. stapp

    stapp Global Moderator

    Joined:
    Jan 12, 2006
    Posts:
    27,169
    Location:
    UK
    @DavidXanatos
    Thank you on behalf of myself and other users for your simple and clear info.
    One question please.
    How will it be applied?

    Common issues suggestion.
    Explorer context menu doesn't work.
     
  6. soccerfan

    soccerfan Registered Member

    Joined:
    Oct 15, 2007
    Posts:
    585
    >>common issues (continued...)
    Issues with email not opening links in default or chosen browser
    Issues with opening/viewing pdf files in this or that browser
    Issues with non-standard location for browser profiles [saving bookmarks, passwords etc]
    issues with browsers installed in non-system drive or portable mode
    ....
     
  7. DjKilla

    DjKilla Registered Member

    Joined:
    Oct 4, 2021
    Posts:
    237
    Location:
    Tampa, FL
    This one drove me nuts. Thanks to Busy, the following paths resolved the issue:

    This path correctly opens the correct default browser when clicking an email link in Thunderbird
    ReadKeyPath=HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\Shell\Associations\UrlAssociations\

    This path fixes the Firefox Settings not showing Firefox as the default browser (If you chose Firefox as the default browser)
    ReadKeyPath=HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FileExts\

    It would be nice if these could be added to the templates.ini if that's possible or to the troubleshooting wizard.
     
  8. DavidXanatos

    DavidXanatos Developer

    Joined:
    Sep 6, 2006
    Posts:
    2,524
    Location:
    Viena
    I was thinking of creating a temporary template for the box experimented upon with the required new options set.
    Then test and on success copy the options to the box section permanently.
    Not sure if this is the best approche as this way we can only add options.
    Perhaps alternatively we could create a full duplicate of the box including pointing its root directory to the original box and then experiment with that.
    Its still in the planning stage so not sure yet what would be best.
     
  9. DavidXanatos

    DavidXanatos Developer

    Joined:
    Sep 6, 2006
    Posts:
    2,524
    Location:
    Viena
    upload_2023-5-29_19-3-37.png

    upload_2023-5-29_19-3-50.png

    upload_2023-5-29_19-4-11.png

    upload_2023-5-29_19-4-18.png

    upload_2023-5-29_19-4-27.png


    just a short preview just dummy pages the scripts are not yet done



    upload_2023-5-29_19-5-1.png

    upload_2023-5-29_19-5-7.png

    upload_2023-5-29_19-5-14.png
     
  10. stapp

    stapp Global Moderator

    Joined:
    Jan 12, 2006
    Posts:
    27,169
    Location:
    UK
    Looks good, Easy to understand and should help users a lot.
     
  11. soccerfan

    soccerfan Registered Member

    Joined:
    Oct 15, 2007
    Posts:
    585
    Yeah, a good start!
     
  12. DjKilla

    DjKilla Registered Member

    Joined:
    Oct 4, 2021
    Posts:
    237
    Location:
    Tampa, FL
    I like it. As questions get answered in the forum, the commonly asked questions with answers can get added to the wizard or steps needed. I can see this being a big help. It's like an interactive FAQ section.
     
  13. sevenstar

    sevenstar Registered Member

    Joined:
    Oct 19, 2010
    Posts:
    54
    Fantastic idea. Your implementation looks good. :thumb:
     
  14. DavidXanatos

    DavidXanatos Developer

    Joined:
    Sep 6, 2006
    Posts:
    2,524
    Location:
    Viena
    I need some input regarding the wizard function, since we will script the individual troubleshooting procedures, its not trivial to keep a normal wizard experience.
    So we will usually disable the back button once a trouble shooting script gets started, from there there is no way back, and if needed the user will have to restart the wizard.
    I think this is better then making the back button unexpectedly terminating the script and going multiple steps back back to the script selection.
    I'll look into making it possible to enable the back button when a script is written to explicitly support that.

    But now to the main issue: the users expects changes to be applied once they press finish, for simple procedures that's possible, but for more advanced procedures once which do a change ask the user to test something and then report back if the fix worked to then decide which fix to try next if needed, that's kind of not doable as the experiment itself requires changes.

    I'm thinking to add a mechanism where a script can create a copy of the sandbox which points to the original sandboxes file root then it can modify it a lot and then only once the user presses finish the duplicate would replace the original.

    This way changes to files in the sandbox would be instant and not cancelable, but all config changes would be...
    What do you think is that good enough?
     
  15. soccerfan

    soccerfan Registered Member

    Joined:
    Oct 15, 2007
    Posts:
    585
    Just thinking aloud: Would it be a good idea to make two copies of the ini,
    (a) one copy to modify and replace the original at the proper time,
    (b) the other copy if user insists to revert to original state at some point?
     
  16. DavidXanatos

    DavidXanatos Developer

    Joined:
    Sep 6, 2006
    Posts:
    2,524
    Location:
    Viena
  17. stapp

    stapp Global Moderator

    Joined:
    Jan 12, 2006
    Posts:
    27,169
    Location:
    UK
  18. henryg1

    henryg1 Registered Member

    Joined:
    Jun 14, 2020
    Posts:
    452
    Location:
    uk
    Will it help me with websites timing out when Firefox is sandboxed?
     
  19. DavidXanatos

    DavidXanatos Developer

    Joined:
    Sep 6, 2006
    Posts:
    2,524
    Location:
    Viena
    yes + and invite the preview repo is only for great supporters
     
  20. DavidXanatos

    DavidXanatos Developer

    Joined:
    Sep 6, 2006
    Posts:
    2,524
    Location:
    Viena
    Small update, as there is no suitable debugger for Qt6's V4 engine, I have made one: https://github.com/DavidXanatos/NeoScriptTools so people who want to make their own Troubleshooting scripts will have a full blown script debugger at their disposal :D
    As this is a rather rarely needed functionality it will be provided as an optional component.
     
  21. DavidXanatos

    DavidXanatos Developer

    Joined:
    Sep 6, 2006
    Posts:
    2,524
    Location:
    Viena
    the message popup will get a Troubleshooting button opening the troubleshooting wizard which when possible will fix the issue

    upload_2023-7-8_13-30-21.png

    Opening the right script directly:

    upload_2023-7-8_13-30-31.png

    some scripts offer automated troubleshooting

    others just point the user to where to change it

    upload_2023-7-8_13-36-29.png

    there Selecting yes will open the option window and bring the appropriate page in front.
    Not sure if we keep this forever or at some point make everything scripted in the wizard.
    But for messages due to options just pointing to the option seams a reasonable approach.


    When no particular script is available, we have a catch all script offering to log some test and submit an issue report

    upload_2023-7-8_13-31-21.png

    whenever the troubleshooting is not successful in the end the wizard arrives at this page

    upload_2023-7-8_13-31-58.png

    here pressing finish will upload the presented text and attached files (if chosen) to sandboxie-plus.com

    when it was successfully it instead presents

    upload_2023-7-8_13-33-6.png

    et voila


    Should we have an optional mechanism to for particularly critical messages like SBIE2181 to open the wizard directly?
     
  22. DavidXanatos

    DavidXanatos Developer

    Joined:
    Sep 6, 2006
    Posts:
    2,524
    Location:
    Viena
    An other thing to consider: the way the scripting engine is currently designed the wizard once a script has ben engaged disables the back button so there is no way back only forwards.
    Do you think this is a problem or is it fine?
    Changing this would not only require the engine to be changed, but would require the scripts to be written as state machines which is more afford hence not ideal for people who may wan to help with scripts but have not much experience.
     
  23. soccerfan

    soccerfan Registered Member

    Joined:
    Oct 15, 2007
    Posts:
    585
    Very impressive already! Bring it on :D
     
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.