Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
After updating the LA portable version, it won't start.
#1
I updated the LA portable version using the configuration shown in the image below, but now LA won't launch; the window flashes and then closes immediately.

https://i.ibb.co/1vscF59/A.jpg

My goal for the update was to update the .NET runtime, LA software, option settings, and the DLL folder, while the script documents didn't need to be updated.
#2
Skipping \files makes the workspace invalid. Never skip it.

\dll is for dlls compiled from C# files of the workspace. Other dlls can be for example in subfolder Libraries of the LA program folder. Then don't need to update the workspace folder.

I tested portable LA created with current LA version, and it works. No \files in Skip subfolders.
#3
Quote:Skipping \files makes the workspace invalid. Never skip it.

I don't quite understand the meaning of this sentence.  

I don't want to use the script files from the installed version of LA to replace the ones in the portable version.

I may have found the cause of the error. I should have excluded the "files" folder, as well as another related file, "files.xml."  

I believe that when excluding the "files" folder, the "files.xml" file should have been automatically excluded as well.  

What should I do now? The files in the "files" folder of the portable version are all intact, but the "files.xml" file has been replaced.
#4
Next LA will not allow to skip \files.

What to do now? Your old portable files.xml cannot be recovered. As well as several other related files. In the portable setup dialog remove the \files line. Old portable scripts will be replaced.
#5
I believe the script files from QM and the script files in LA have the following relationship.
Portable.qml == files + files.xml

I still don't understand why they need to be forcibly replaced files + files.xml

The migration settings of the QM portable version, as shown in the image below, are much clearer.
https://i.ibb.co/KhHBktY/B.jpg

Regarding the migration of the DLL folder:  
The files in the .nuget folder of the installed version of LA are too large, so I manually copied the DLL files downloaded by NuGet to the DLL folder (as the DLL updates are not too frequent). Therefore, I need to migrate this folder.
#6
In files.xml is saved the tree, order, and some properties of C# files. If the old portable files.xml == non-portable files.xml (or very similar), then the portable workspace is still valid.

But some dlls in the \dll subfolder now may have wrong versions, and it could be the reason why now portable LA crashes. Try to delete the portable \dll folder.
#7
Quote:Try to delete the portable \dll folder.
No effect.  

The issue of LA not starting is still unresolved.  

Additionally, I believe replacing the "files" folder and "files.xml" is very risky. A backup should always be created, no matter what.

Where can I find the log for the LA startup error?
#8
Rename (backup) your portable folder and run the portabe LA setup tool. Delete the \files line. Portable LA then should work.

LA does not create error logs, but .NET usually writes to Computer Management > Event Viewer > Windows logs > Application.

Also you can tell Windows to create a .dmp file when LA crashes. Then send it to me. Often it is useful.
https://learn.microsoft.com/en-us/window...mode-dumps
   
#9
Quote:Rename (backup) your portable folder and run the portabe LA setup tool. Delete the \files line. Portable LA then should work.
Thanks for your help.  
The portable version of LA is now working, but all the script files are from the installed version of LA, and the list of opened files is different from the one in the installed version.  

Can I now just drag and drop the "files" folder from the old version of LA into the file list for import?  
Doing this every time is quite cumbersome(Delete the files and then import the files again.); it would be great if it could be handled automatically.

I only want to update files, excluding the "files" folder and "files.xml" and "dll" folder(Commonly used DLLs) which doesn’t seem too complicated.

There are too many scripts in the file list of my installed version of LA, while the file list in the portable version of LA contains only the script files that I successfully tested, which are fewer in number but very important. It would be disastrous if they were replaced or deleted. Wink
#10
Quote:Can I now just drag and drop the "files" folder from the old version of LA into the file list for import?
Try. Exit portable LA and replace \files. Should work if portable and non-portable workspaces are similar.
 
Quote:I only want to update files, excluding the "files" folder and "files.xml,"
The portable LA setup tool can't do it. Use some other way to copy these files. But updating \dll without updating script files is not recommended.
#11
Additionally, could you add similar markers to the title text as shown in the image below? That would be very useful.
https://i.ibb.co/mChQT21/A.jpg
I frequently switch remote desktops, so adding markers for the portable version is very necessary.

Quote:Try. Exit portable LA and replace \files. Should work if portable and non-portable workspaces are similar.

The `files.xml` file has been replaced, and I only have the old version of the `files` folder. It seems that I can only import it manually.

I use the portable version of LA primarily for script testing on client machines, so I don't install the .NET SDK or need other additional components. e.g: .nuget
The DLL files in the DLL folder are files installed and tested via NuGet in the installed version of LA.
#12
Add this script to Options > Workspace > Run...

Code:
Copy      Help
// script "Set LA window title.cs"
/*/ role editorExtension; testInternal Au.Editor; r Au.Editor.dll; /*/

string baseText = "LibreAutomate" + (ScriptEditor.IsPortable ? " (portable)" : "");
bool once = false;
FileNode prevFile = null;
App.Timer025sWhenVisible += () => {
    var f = App.Model.CurrentFile;
    if (!once || f != prevFile) {
        once = true;
        prevFile = f;
        var s = f == null ? baseText : $"{baseText} - {f}";
        App.Wmain.Title = s;
    }
};
#13
Recommended: use folder \dll only for dlls compiled from scripts. The purpose of this folder - it is the default output folder of library projects, so you don't need to specify an output folder for each library project (but you can). For other dlls use some other folder, if possible. A good place is subfolder Libraries in the QM program folder.
#14
Thanks for your help and suggestions.
#15
I manually imported the "files" folder from the old portable version of LA, but a few issues occurred:
1. Files in the file list now require a double-click to open. Previously, or in the installed version of LA, I could open them with a single click.
2. The text in the mouse information output bar has become a single line, whereas previously, or in the installed version of LA, it was displayed as two lines.
3. I imported the old "files" folder after deleting all the file lists in the portable version of LA, but the `global.cs` file was still renamed to `global-renamed.cs`.
4. The size of some border splitter has changed, becoming 4.

I need to sync the following items from the installed version of LA:

1. **Options Dialog**  
2. **Customize Dialog**: Hotkeys, icons, etc., from the toolbar customization  
3. **UI panel layout** and **panel settings **
4. **.NET runtime**  
5. The **Main\.nuget** directory, excluding named "-" folder(I will follow your suggestion and stop copying the "dll" folder for #13), The items in the green box, as shown in the image below.
https://i.ibb.co/09xzSL5/A.jpg
6. Important: The `files` folder and `files.xml` file in the LA portable version must not be replaced.

How should I configure the "Portable Dialog" to achieve these goals? Thanks again!
#16
1 - 3. Check Settings.

5 - 6. Uncheck Workspace. The portable setup tool cannot copy .nuget without files/files.xml. Copy .nuget not with this tool.
#17
In the LA portable version, I now need to double-click on the item names in the file list to open them, whereas before it was a single click. How can I restore it?

I'm afraid of running into trouble, so I haven't been using the sync feature of the portable version and have been relying on copy and paste for my code instead.
#18
Uncheck Multi-select button or menu item.


Forum Jump:


Users browsing this thread: 11 Guest(s)