the new release of the 2020.2.0 is amazing as it downloads the branding making my custom exe build smaller again (not by much)
but the issue i now have is when a client downloads my custom exe which simply pastes the wayknow.exe into a temp folder and then runs wayknow.exe -den wss://myserver.com
it then opens up and displays the default wayknow branding then connects to our waykden and then displays a message saying 'please click here to restart and apply changes'
once the client then clicks that message, the application reloads with our branding!
is the no way of downloading the branding.zip BEFORE the app is launched to then have the branding applied and ignore the restart message?
another issue i have is if you DONT click the reload message quick enough it vanishes and you cant get it back,
even if you go into the message center and click the reload message, nothing happens?
Hi Simon
Right now, things are optimized for .msi deployments: the Windows service will have downloaded and installed the branding before the client is run. I understand what you're asking for in terms of delaying the application start, but it's unlikely to be something we'll add as it involves broad changes in the client.
Instead, our focus will be on making custom Wayk Now packages "official" and providing a means to bootstrap the branding as part of that. I don't have many specifics to share on that currently, but we're taking inspiration from the ps2exe approach and turning it into something more complete (custom packages will be code-signed, have the option of bundling the service to enable advanced features, etc, etc). We have a dedicated development resource starting work on that next week, so you could expect to see something in the short to medium term.
Otherwise, the workaround for now is to continue packing your custom branding inside your package. Hopefully it doesn't make things too much bigger.
Also, thanks for the feedback on the message in the notification centre - we'll address that in a future release.
Let me know if you have further feedback or questions!
Thanks and kind regards,
Richard Markievicz
Hi,
thanks for the reply,
however it wasnt the reply i was hoping for :(
the issue i have is we have clients who ARENT ALLOWED to install setups, so running a simply exe and being able to control is the best part!
we even had another client ring and ask for help, we then offered a portable on which removes everything after its run, but the client was very warey as we could possibly still control his computer later on down the line? (even tho its was a simple exe with no install, and he then agreed later on to use this method :eyeroll: )
so im sorta stuck now
the other issue i have, is i can embed the branding.zip in the exe as it does, copys it to the roaming folder, as it does, and loads the exe which then applys the branding.zip, as it does
BUT it then pops up a message saying please reload client to apply changes, as its then downloaded the branding.zip file off our waykden server even tho i already copied it manually before the wayknow.exe even ran!!!???
Regards
Simon
Hi Simon
To clarify what I wrote earlier - when I talk about a custom Wayk Now package, I'm referring to a click-and-run .exe - like what you already have, *not* a custom installer / .msi. Something fully self-contained that includes things like redirecting the configuration to a custom location rather than %appdata% for clean removal.
For your second point - we shouldn't attempt to overwrite an already manually installed branding, so that sounds like a bug. We will take a look into it and post back here with further news.
Thanks and kind regards,
Richard Markievicz
Hi Simon
Are you manually applying the branding.zip obtained from Wayk Den, or is it a different file with the same contents (e.g. one that you created yourself)?
Before installing the server-side branding.zip, we take a look at what's already on disk. If there is an existing branding.zip, we perform a hash check against the incoming file, and if they are the same, no work should be done (and no notification shown).
That does depend on the files being "identical" - if the two files have the same contents, but were created by different means / users / computers / etc, they won't deterministically be the same. So in this case, the hash check would fail, the incoming Den branding will replace your local file, and the user gets a notification.
Let me know if something's unclear. If you're certain that the files are the same, you could reproduce the issue with logging enabled and we'll be happy to take a closer look. In your use case, you could enable logging upfront by setting the environment variable WLOG_LEVEL=DEBUG.
Thanks and kind regards,
Richard Markievicz
Hi,
ah right ok so you working on a better portable version! GOT YOU!
as for the branding.zip issue, im now not sure what the issue was?
i ran the wayknow.exe without my branding.zip, let it download the branding from my waykden, copied that branding.zip and embedded it in my golang app, then removed it and ran my app, it then loads up with my branding without showing the reload message?
maybe a mismatch in file size or something as you said, very strange? but it working now thank you :)
Regards
Simon
Hi,
i have another quick strange one to ask if thats ok
i have set:
TICKED 'automatically launch application on user logon'
UNTICKED 'show main window on application start'
TICKED 'minimize main window to notification area'
UNTICKED 'prompt to elevate program permissions'
yet whenever a windows 10 computer logs in OR restarts
the window pops up when if I'm correct it should be hidden?
Regards
Simon
Hi Simon
you working on a better portable version
Yes, exactly!
maybe a mismatch in file size or something as you said
Yes, exactly - even some kind of attribute encoded into the .zip like creator name or something. Anyway, glad to hear that's working now.
i have another quick strange one to ask if thats ok
Ask as many questions as you like, we are happy to help.
I did just try that configuration on a clean WaykNow.exe 2020.2.0 on Windows 10, and it worked as expected (the window was hidden on startup, which you are correct is the proper result).
Can you check your config in %appdata%\wayk\WaykNow.cfg contains the following:"ShowMainWindowOnLaunch": false
Can you check there's no .cfg file in %programdata%\wayk overriding your options?
Thanks and kind regards,
Richard Markievicz
Hi
i have a custom built install.exe which does the following...
my Wayknow.cfg looks like this, nothing special:
{
"Language": "en",
"ControlMode": 2,
"DenEnabled": true,
"DenUrl": "wss://myserver.com",
"LoggingLevel": 2,
"AutoLaunchOnUserLogon": true,
"ShowMainWindowOnLaunch": false,
"MinimizeToNotificationArea": true
}
but as explained, when i restart the computer and then login to the computer, the application runs instead of being hidden in the taskbar?
Regards
Simon
Hi Simon
I can try the same on my side to see if I can figure it out, but first can you check the permissions after you overwrite %programdata%\wayk\WaykNow.cfg?
The file should be Full Control for SYSTEM and Administrators, but Read / Read & Execute for "Users".
Thanks again,
Richard Markievicz
Hi,
ive just uninstalled via the msi, removed the %appdata%\wayk and %programdata%\wayk completely,
re-ran my setup (as admin as otherwise i cant copy to %programdata%)
all installed ok, it even started the app in taskbar instead of opening up as expected at the end,
ive also checked the file permissions and its full control for system and admins and read/read+execute for users as you said
but restarted, logged in, and its open on the desktop?
ive even run the microsoft sysinternals autoruns/autoruns64 to check its not listed anywhere it shouldnt be (incase ive added it somewhere while playing over the past few months) and its not listed in anything registry or file wise?
so im still confused?
Regards
Simon
Hi,
ive also just tried a fresh setup on Server 2019 and that's same thing?
its it maybe because the ShowMainWindowOnLaunch only works in the users %appdata% config and not the whole computers %programdata% config ???
Regards
Simon
Hi Simon
The setting should be read first from %programdata%. Is there any chance you can send us your custom install.exe to try? You could zip it and attach to a PM or send to wayk@devolutions.net.
Thanks and kind regards,
Richard Markievicz
Hi Simon
The setting should be read first from %programdata%. Is there any chance you can send us your custom install.exe to try? You could zip it and attach to a PM or send to wayk@devolutions.net.
Thanks and kind regards,
Hi,
Please find my repo of my code and readme on getting it setup/built,
can you give that a go?
https://github.com/si458/install-wayknow
Regards
Simon
Hi Simon,
I built your custom installer written in Go and tried it myself, we definitely have an issue with "ShowMainWindowOnLaunch" and possible interference with "Automatically launch application on user logon". Basically, checking/unchecking the "Automatically launch application on user logon" in the UI causes a registry key to be added in "HKCU/software/microsoft/windows/currentversion/run". However, recent versions of Wayk Now use the unattended service to automatically launch the Wayk Now program on session launch, right there we have a problem with it being launched twice (sufficient to cause the main window to be shown). I did some more testing and manually deleted that registry key, but the issue persists, so we'll have to investigate it further before we know the root cause of the issue. In all cases, it is not related to your custom executable, but we acknowledge there is a problem with "ShowMainWindowOnLaunch".
I do have a few questions for you, as we are about to get the work started on a custom package similar to your ps2exe solution. I am bit confused here, because earlier in this thread you've mentioned that you have clients who aren't allowed to install setups (.msi installers as I understand it), yet your new go-based solution packages the real .msi installer for the purpose of installing it automatically with additional configuration.
Are you looking at more than one possible solution for different customer needs? Is one of them to pretty much bootstrap a full Wayk Now installation, by using the original .msi installer + modifying the configuration to point to your own Wayk Den + add a branding.zip file? If so, this is something we can look into, it's just quite different from my original understanding of what you were trying to achieve with ps2exe.
Let me summarize what the current plan looks like, or the plan we had before reading this thread:
The standalone WaykNow.exe from the website contains both the 32-bit and 64-bit version of the real WaykNow.exe, it just extracts the good one and runs it. We would like to repurpose it to embed all the Wayk Now release artifacts normally contained within the .msi installer, but without the .msi itself. The goal would be to package the following together inside a single executable:
Simply put, your ps2exe idea is a good one, because it would be extremely easy to modify and adapt to different needs through the "main" PowerShell script. Here's what the custom executable would do:
Simple enough, but it would be sufficient to load the local copy of WaykNow-ps and perform all kinds of configuration modifications. We've started modifying Wayk Now to accept path overrides through environment variables such as WAYK_DATA_PATH (%AppData%\Wayk) and WAYK_SYSTEM_PATH (%ProgramData%\Wayk). Those changes are not yet released, it is just preparation work for the custom executable. We will also modify WaykNow-ps to accept those environment variables, such that one could unpack a full copy of Wayk Now inside a single directory and modify configurations all contained within that directory.
What we didn't yet try doing, but intend on doing, would be to use PowerShell commands to do the same thing the .msi does for a real installation, which means doing a one-time service registration with commands like New-Service, Start-Service, etc. All files would remain in the same directory and we wouldn't touch Program Files. Of course, you would still need admin rights for that, but worst case we might even be able to do a bit of scripting to determine if you wish to try elevating permissions or not on a given machine.
This type of solution would be to cover use cases where we don't want to leave traces after Wayk Now has been used. We'd make it such that the custom executable cleans up Wayk Now and the one-time service registration.
Is this what you are looking for, or are you more interested in a solution similar to what I just described, but that would unpack the .msi installer, install it, set your branding.zip file + change configurations and then launch Wayk Now (bootstrapped installation)?
Best regards,
Marc-André Moreau
Hi Marc,
please forgive the confused i might of caused you...
i currently have 2 uses at the moment:
method 2 with the msi is also handy for a few of our servers/clients servers again for the unattended access with user/pass method
my primary goal was to simply apply our branding on the setups/portable versions and use our servers,
the msi right now (2020.2.0) is perfect! installs fine, copys config fine, starts app fine and away we go (well my method using my golang app anyways)
i hope this has cleared up the confusion, and im glad u think you might have found the bug
im also in the middle of just uploading my portable golang app to github, so you check that out too :)
i have also found another weird bug which im trying to find out why its happening, so ill open another post over this
(basically after 5 mins of being connected to a client, the mouse clicks stop working, but the screen is refreshing/changing etc?)
Regards
Simon
Hi,
uploaded portable golang version for you to try, https://github.com/si458/portable-wayknow
Regards
Simon
Hi Simon
As Marc wrote; there appears to be a regression in the "ShowMainWindowOnLaunch" option when combined with launch on login. Essentially, a bug causes WaykNow.exe to get launched *twice* at login. WaykNow is a singleton and only allows a single instance to run; if you try to run it a second time, the existing instance should be opened (and in this case, we activate the application and show the main window). So the erroneous second launch is activating the application and showing the main window.
We'll dig into that and I'll post back here with an update.
i have also found another weird bug which im trying to find out why its happening, so ill open another post over this
(basically after 5 mins of being connected to a client, the mouse clicks stop working, but the screen is refreshing/changing etc?)
If you can't work out what's going on, please do open another post - we'd be happy to look into it. It does sound extremely weird.
Thanks and kind regards,
Richard Markievicz
Hi Simon
To clarify what I wrote earlier - when I talk about a custom Wayk Now package, I'm referring to a click-and-run .exe - like what you already have, *not* a custom installer / .msi. Something fully self-contained that includes things like redirecting the configuration to a custom location rather than %appdata% for clean removal.
For your second point - we shouldn't attempt to overwrite an already manually installed branding, so that sounds like a bug. We will take a look into it and post back here with further news.
Thanks and kind regards,
this sounds like fun, looking forward to this.
Hello
I wanted to circle back around to this topic as a few issues were discussed here.
First, as I mentioned above, we have a development resource currently working on an improved portable Wayk Now. That work is ongoing so you can expect some improvements here soon, probably before the end of the summer.
Next, with regard to the Wayk Now client not respecting the "ShowMainWindowOnLaunch" setting: historically, Wayk Now allowed setting a "Automatically launch application on user logon" checkbox. This checkbox added an entry to the current user's registry to run the application at login time. However, this option became confusing for a few reasons:
1) It was not possible to set this using our command-line tools (actually, you could set it, but without the logic to add/remove the registry entry, it did nothing)
2) It was not straightforward to enable and manage this for multiple / all users on the machine
Wayk Now 2020.2.0 added some logic to the unattended service that checks the "auto launch" setting in the global (%programdata%) configuration, and launches Wayk Now if needed. However, if that option is enabled globally alongside the old-style registry entry, then Wayk Now will get launched *twice* at user logon. Since the application is a singleton, this doesn't really matter - unless you also unset the "Show main window on application start" setting. Why? Because the second "launch" of Wayk Now will activate the first instance, and cause the main window to be shown anyway.
Going forward, the Windows client no longer allows setting "Automatically launch application on user logon" in the standalone (portable) executable. The sanctioned way to do that will be to create your own registry entry (or other mechanism) for auto-launching the standalone client - although note that we're not breaking existing deployments here, any previously created registry entries will be left intact. The supported way to achieve "auto launch at login" will be to install Wayk Now using the .msi and configure that as a global setting.
Finally, with regard to the client prompting the user to restart for updated branding: in most cases, it's not expected that this is a prompt the end-user will actually see very often:
1) The optimized path is for integrating with Wayk Now when deployed via the .msi. We would expect the unattended service to have retrieved and deployed the custom branding before Wayk Now is launched.
2) If you distribute a portable copy of Wayk Now, we recommend shipping a bootstrap copy of your custom branding alongside. This is necessary to avoid the case of the client showing its default branding on first launch. If the archive you ship is the same file distributed by your Wayk Den, then no unnecessary update will occur - but this does depend on the files being deterministically the same.
3) When the branding is updated on Wayk Den; although we'd expect this to be in the form of small tweaks and changes that can happily wait until the next natural restart of the client
Unfortunately, if you do get a case where the branding is updated live and the user is prompted to restart, the toast that is shown will not be actionable once it lands in the Windows 10 Action Center. I doubt we will improve this in the near future: it requires a fair amount of work for us to integrate with the enhanced Windows 10 toast properly, and we consider toasts to normally be an edge case (and something that may often be disabled or silenced by the user anyway). Instead, for the near future, we are looking at better ways to communicate the restart requirement (and other important messages from Wayk Now / Wayk Den) without using system notifications at all.
As always, please let us know any further questions or feedback!
Thanks and kind regards,
Richard Markievicz
Hi Richard
i have found a way around using my own custom golang exe to embed the setup, branding etc, it was causing to many issues with avg and avast as it kept deleting the exes, etc... was a nightmare!
however since the latest update of waykden auto downloading the branding.zip it was one less thing to bundle!
so I rewrote my old powershell script to use your powershell script instead which simply does the following
I am still waiting on a reply tho about the auto update issue? Check github...
If I run the msi setup and not install the desktop/start menu icons, and a new version is released, how does that up update feature work?
does it just download the msi and run it?
does it just download the latest exes and cut/replace them?
if it uses the msi method, will the icons get installed by default like they do now unless you specify no icons!?
i have also discovered What I think is an issue as well...
I install the msi which installs the unattended mode,
client rings and asks for help,
I have there ID number to hand so I connect in,
But I can’t connect because it asks ONLY for the computers user/pass, no other option???
I believe this is because the wayknow exe isn’t running, only the service is (note I have the hide on startup ticked and auto start on login also ticked but it doesn’t always autostart?)
so I then have to ask them to click the wayknow icon on the desktop so then nothing is displayed on the screen and it totally confuses them
but I can then connect in to them because I get the option to use the prompt for access method
keep up the amazing work tho!
have used it for a few clients and it’s been brilliant!
Regards
Simon
Hi Simon
Your latest ps2exe changes sound good - hopefully the portable .exe improvements we have in the pipeline will make this even easier for you going forward.
The automatic update feature downloads the .msi from our CDN and installs it using msiexec. However, based on your feedback, we're integrating a change for the next release: if you run the .msi as an upgrade (i.e. there's already a Wayk version installed) but don't explicitly disable the shortcuts, we'll check on disk if they exist or not. If the shortcuts aren't present, we won't recreate them.
So this should also cover the scenario where you renamed the Start and Desktop ions while using the prior version of WaykNow-Ps.
That change will be in the next release of Wayk Now (so, the first version that will be "auto updated" to).
Regarding the issue you mention:
> I believe this is because the wayknow exe isn’t running, only the service is
That's correct and by design.
> but it doesn’t always autostart?
That sounds like the root of the issue. I'm not sure why that would be the case but perhaps there's a case we missed for launching WaykNow.exe. It would be extremely helpful the next time this happens if you can take the log files from the remote system. You can just open Wayk Now on the remote machine and choose Help > Export Diagnostics, and send us the resulting .zip file by PM or to support@devolutions.net.
> keep up the amazing work tho!
> have used it for a few clients and it’s been brilliant!
We're extremely happy to hear that and welcome the continued feedback and suggestions.
Thanks and kind regards,
Richard Markievicz
Hi,
thanks for your reply,
the powershell script works a treat now with the no desktop/start menu icons and me creating my own :)
another quick question to add onto the 'autoupdate' feature,
will the software pop up if the wayknow.exe is running to say the is a new version and the user must manually click yes for it to update?
or will it silently autoupdate in the background via the msi using the unattended nowsession.exe ?
as for my weird issue with it not auto-running when a user logs in, i have given up at the moment with this feature,
on some computers, it double loads when the users login (where it runs in the taskbar and then opens the full window by accident, you identified this issue the other week because of the unattended usage)
and on some computers, the unattended nowsession.exe is running, but it never runs the waynow.exe on the users login, and i require the user to double click the desktop icon (which totally confuses the client because nothing happens when they click it because i have the 'hide on load' ticked to hide it in the taskbar when the user first logs in)
Regards
Simon
Hi,
ok i found the issue with the not auto starting itself,
If set the autolaunchonuserlogon to true before i install the msi (so then everything configured ready for the msi to do its job) and then run the wayknow exe after its been installed, the wayknow.exe isnt inserting the registry key into the users RUN registry!
Also if the autolaunchonuserlogon is set in the GLOBAL config, no matter if you tick or untick it manually in the software, it stays ticked but the wayknow.exe never actually inserts the required registry key it into the current_user registry!
also on another note, i expected if i set the autolaunchonuserlogon to true in the GLOBAL config, then it would set the run registry in the computers registry and not the users registry, then it would autostart on every users login (for example domain computers where users logon/logoff all the time and never the same user, we currently have this)
Regards
Simon
Hi,
ok i have found another bug,
if the unattended is installed on a workgroup computer and the local user account doesnt have a password it autostarts on login as expected
BUT if the local user DOES have a password, the wayknow.exe doesnt autostart after login as expected!?
Regards
Simon
Hi Simon
This is exactly what I meant when I said "this option became confusing". Trying to manage the registry entry just becomes too hard - synchronizing the checkbox and the registry state and the user/global configs provides too many ways for things to go wrong. Especially when we consider the setting can be altered in Wayk through the UI, command line or by direct editing of the config file. We did consider managing keys in HKLM but that just adds more complexity behind a single checkbox.
So, for the next version, this comes back under control: the checkbox will only be available on unattended installs, and it will instruct the unattended service to launch the app. For standalone deployments, it's expected to manage auto start yourself if that's required. I'll encourage you to re-evaluate this once 2020.2.1 is available.
Regarding your last post, I just tried that with a fresh Windows 7 SP1 workgroup install and set a password for my user, and the "launch at login" worked as expected. If you can reproduce that issue, can you send me the logs from the machine (Wayk Now "Help > Export Diagnostics") by PM or to support@devolutions.net?
Thanks and kind regards
Richard Markievicz
Hi
i will try when I get home from office and have some free time
it happens on the fresh download of the windows 10 test VMs that I download from Microsoft which create the user IEUser
and these all have preset passwords,
but if I import the powershell first, run the set-config command as global to autostartonlogon and then install the msi again from the powershell,
it doesn’t appear to run if the user has a password set?
but the min u remove the password and the computer auto logins, the app is then run and opens up?
regards
simon
edit: forgive short msg before, submitted by accident
Hey Simon
That's really strange. From my side, I downloaded the Win10 modern IE image for VMWare and tried:
Install-Module -Name WaykNow
Set-WaykNowConfig -Global -AutoLaunchOnUserLogon $True
Install-WaykNow
After rebooting and logging in, Wayk Now was launched after a short delay (maybe 20-25 seconds).
I'm not sure why you're seeing that behaviour on your side - the log file I mentioned in my last post would really help to understand.
Thanks and best regards,
Richard Markievicz
Hi Simon
Some further closure on this thread: Wayk Now 2020.2.1 will be released later this afternoon and includes the fixes mentioned above.
Further more, version 1 of our improved portable version is finishing development and will be delivered for internal testing soon. You can expect more news on this soon.
In the meantime, any further questions or problems please don't hesitate to post.
Thanks and kind regards,
Richard Markievicz