+ Post New Thread
Page 2 of 4 FirstFirst 1234 LastLast
Results 16 to 30 of 52
Educational Software Thread, Registration via internet of newly installed software (on each machine) in Technical; ...
  1. #16


    Join Date
    Feb 2007
    Location
    51.403651, -0.515458
    Posts
    9,069
    Thank Post
    232
    Thanked 2,719 Times in 2,007 Posts
    Rep Power
    797
    Quote Originally Posted by Kipling View Post
    It’s good to see a developer doing some market research in this area.
    Definitely agree with you on this. If only all developers did this our lives would be significantly easier.

    Quote Originally Posted by mlapworth View Post
    OK, so I've realised I can make an msi and keep all of the files and folders outside the msi, unpackaged, so that the whole thing can be copied to the end user's computer, modified as necessary and then installed.
    This was exactly what I was going to suggest.

    Quote Originally Posted by mlapworth View Post
    So how does this sound?
    As Kipling said above, the majority of network managers/IT techs are honest, so if there is any possibility of not requiring registration that would be ideal. However, if you do need customers to do this, both Kipling's and AngryTechnician's examples sound like a very good compromises. As with TechSoft's 2D Design you could display the license details on a splash screen or somewhere within the GUI of TaskMagic itself so it would be clear when a school is running more copies than they are licensed for. Example attached.

    One potential issue I can see with item 2 in your list is what happens if staff want to use Task Magic on a computer that isn't always connected to the school network e.g. their school issued laptop which they almost always take home with them? Despite the program having been successfully registered previously, Task Magic will not work because it won't be able to find the registration data on the network.

    For item 3, another thing to watch out for when users replace files with newer copies of the same file are the Windows Installer file versioning rules. The default file versioning flow charts show how this process works for unversioned files like the ones in your Samples folder. You would need to test out this scenario thoroughly to make sure it works perfectly (both installation and uninstallation). There's nothing worse than an installer which leaves files behind after it has been uninstalled.

    What about something like this?

    1) An MSI that performs a per machine installation with files stored uncompressed externally (as described above).
    2) The Task Magic MSI copies a license file (called something obvious like "tm.license" or "tm.lic") to the install folder during installation. This would be located in the same folder as the MSI. In order to do this as part of the installation you would need to include some sort of dummy license file which will have to be overwritten with the real license file BEFORE Task Magic is deployed to computers. When Task Magic runs, it verifies the license file and works as normal if everything checks out. If there is a problem or it can't find this file, either...

    * Display an appropriate message telling the user to contact thier IT Dept. for assistance or the person responsible for the installation.
    * Fall back to a mode where the user can't save anything, the program has very restricted functionality or doesn't work at all until the correct license file is supplied.
    * Check an optional pre-defined registry key which specifies an alternate path to the license file. Some customers may want to keep the license file in a central location on the network for security reasons (although this would prevent use of the program at home). For example...

    Code:
    [HKEY_LOCAL_MACHINE\SOFTWARE\MDLSoft\TaskMagic]
    "License"="\\ServerName\ShareName\TaskMagic\tm.license"
    3) IT Manager/Technician/computer-literate teacher could download a newer version of your MSI (and associated files) and overwrite all of them with up-to-date copies of the same files. If they are on a CC3 network they can simply re-allocate the package to install the latest version.
    Attached Images Attached Images

  2. Thanks to Arthur from:

    mlapworth (5th April 2010)

  3. #17

    Join Date
    Apr 2010
    Posts
    32
    Thank Post
    30
    Thanked 1 Time in 1 Post
    Rep Power
    0
    Thanks for the replies. I really appreciate the time taken to ive me your considered responses.

    I agree with what you say about the honesty of schools / technicians / IT staff in UK schools, and I have had no problem with selling a version that didn't need registering at all. BUT what I am trying to do now is come up with one version of the TaskMagic exe files that can work as a single user, 10 user or site licence version, and that can be used for the UK as well as for other areas where I am told that trusting in the honesty of schools and their employees is not a good idea. I could carry on with the same setup in the UK as I have always had, but this would necessitate separate versions of the exe files, and I'm trying to make things simpler (for me at least ).

    "One potential issue I can see with item 2 in your list is what happens if staff want to use Task Magic on a computer that isn't always connected to the school network e.g. their school issued laptop which they almost always take home with them? Despite the program having been successfully registered previously, Task Magic will not work because it won't be able to find the registration data on the network."
    - My idea was that either
    (i) laptop users would install the software separately to their laptops directly from the installation CD, registering their copy directly via the internet, or
    (ii) whenever the TaskMagic programs are run on any computer, they will look in the specified location for the reg details, and if the same details are not already present on the local machine, the details would be copied to the local machine (to the all users directory, for example, or to the registry). Would that be feasible? This would mean that the reg info should always be present on the local machine.

    My idea is that there will be a splash screen - a bit like the one suggested by Arthur - which will say who the software is licensed to and what type of licence it is.

  4. #18


    Join Date
    Feb 2007
    Location
    51.403651, -0.515458
    Posts
    9,069
    Thank Post
    232
    Thanked 2,719 Times in 2,007 Posts
    Rep Power
    797
    I see what you mean about making things simpler. It would definitely be much easier to sell the same version to both UK and international customers.

    For single and 10 user licenses perhaps an internal license server may be the best way to go then, with an "offline" mode like Valve's Steam software has. If Task Magic can't contact the license server after 30 days it just stops working (in the same way your trial does). A longer period of time like Nephilim suggested would be much better though to account for the summer holidays or pregnant teachers working from home.

    For site licenses, you could do away with the license server requirement and instead get the program look for a file on the local HDD instead. This could be one of the selling points for the site license to encourage people to buy this version in the first place or upgrade from the single/10 user licenses.

    Quote Originally Posted by mlapworth View Post
    the details would be copied to the local machine (to the all users directory, for example, or to the registry). Would that be feasible? This would mean that the reg info should always be present on the local machine.
    If Task Magic was running under a standard/restricted user account it wouldn't be able to write to the "All Users" folder (or the ProgramData folder on Vista/7). The same applies to the registry since users wouldn't have the necessary permissions to write to the HKLM key.
    Last edited by Arthur; 4th April 2010 at 11:38 PM.

  5. Thanks to Arthur from:

    mlapworth (5th April 2010)

  6. #19
    kearton's Avatar
    Join Date
    May 2007
    Location
    Yorkshire, via NZ ;)
    Posts
    880
    Thank Post
    171
    Thanked 106 Times in 88 Posts
    Rep Power
    45
    Quote Originally Posted by mlapworth View Post
    A separate issue is one of updates. At present, updating my software means replacing the existing exe files with new ones that can be downloaded from my website.
    When we installed TaskMagic the MSI installed v2.1.3, but when I checked the website there was an upgrade to v2.1.6 - this involved downloading 2 .EXE files to replace. I asked for an MSI installer but was told there wasn't one. I ended up creating a new MSI myself containing the 2 files and installed this over the top of the original MSI. It would be handy if you could provide your future upgrades in MSI format too...

  7. #20

    Join Date
    Apr 2010
    Posts
    32
    Thank Post
    30
    Thanked 1 Time in 1 Post
    Rep Power
    0
    Quote Originally Posted by Arthur View Post
    If Task Magic was running under a standard/restricted user account it wouldn't be able to write to the "All Users" folder (or the ProgramData folder on Vista/7). The same applies to the registry since users wouldn't have the necessary permissions to write to the HKLM key.
    OK, I thought that might be the case. Is there anywhere else I could copy the info to that could be accessed by all users? If not, I could always put it in a "registration" folder in the current user's documents folder, or copy it to the HKCU section of the registry.

  8. #21

    Join Date
    Apr 2010
    Posts
    32
    Thank Post
    30
    Thanked 1 Time in 1 Post
    Rep Power
    0
    Quote Originally Posted by kearton View Post
    When we installed TaskMagic the MSI installed v2.1.3, but when I checked the website there was an upgrade to v2.1.6 - this involved downloading 2 .EXE files to replace. I asked for an MSI installer but was told there wasn't one. I ended up creating a new MSI myself containing the 2 files and installed this over the top of the original MSI. It would be handy if you could provide your future upgrades in MSI format too...
    Yes, I think we'll try to do that.

  9. #22

    Join Date
    Aug 2008
    Location
    Northwest
    Posts
    79
    Thank Post
    1
    Thanked 10 Times in 10 Posts
    Rep Power
    14
    Quote Originally Posted by mlapworth View Post
    If not, I could always put it in a "registration" folder in the current user's documents folder, or copy it to the HKCU section of the registry.
    Definitely avoid doing that, it would mean us copying it into every uses “documents” folder or making changes to appdata etc in profiles, the same goes for HKCU – that again will mean making changes to users profiles. If you need to store registration data, it can be stored in HKLM (a standard user can read that, just not write to it) or in a file on the local machine (“Program Files” folder is perfectly readable to standard users). An installer will be able to write to either of those locations whether it is done locally (assuming installed by admin) or through an msi & gpo setup.

    Where do you currently store your registration data? – in the registry I’m guessing?



    I don’t think you are going to find an easy one size fits all solution but to amalgamate some of the suggestions in this thread, how about this possibility:
    (Given that you’d like to only have to maintain one version and that we’d like to avoid per machine registration; this should only require a very simple change to your main program)

    • Issue your software as an MSI (almost) exactly as it is now.
    • Allow people to register by hand if they wish or if they only have a few licences.
    • Issue an additional MSI to site-wide licence holders which does nothing more than set a few registry keys in HKLM with data about the licence owner/school info.
    • Your software then simply checks for that key:
      • If its there, then don’t bother with all the registration checks, allow the program to run and display a splash screen detailing ownership/usage permissions etc.
      • If the key is not there then perform whatever checks you currently perform to see if the program has been registered by hand.


    Advantages
    You only have to maintain one program.
    Not a big change to your current code base to accomplish the changes.
    Network admin will be happy with the simple install.
    Home users / staff laptops not on the domain will be able to use the program.
    Upgrades will not affect the site licence side of things.

    Disadvantages
    Not super secure in a software protection sense (although you could scramble/encrypt the data in the registry keys to help)



    How does that sound?

  10. Thanks to Kipling from:

    mlapworth (5th April 2010)

  11. #23


    Join Date
    Feb 2007
    Location
    51.403651, -0.515458
    Posts
    9,069
    Thank Post
    232
    Thanked 2,719 Times in 2,007 Posts
    Rep Power
    797
    Quote Originally Posted by mlapworth View Post
    OK, I thought that might be the case. Is there anywhere else I could copy the info to that could be accessed by all users? If not, I could always put it in a "registration" folder in the current user's documents folder, or copy it to the HKCU section of the registry.
    Quote Originally Posted by Kipling View Post
    Definitely avoid doing that, it would mean us copying it into every uses “documents” folder or making changes to appdata etc in profiles, the same goes for HKCU – that again will mean making changes to users profiles. If you need to store registration data, it can be stored in HKLM (a standard user can read that, just not write to it) or in a file on the local machine (“Program Files” folder is perfectly readable to standard users). An installer will be able to write to either of those locations whether it is done locally (assuming installed by admin) or through an msi & gpo setup.
    ^^ This. I should have mentioned that while ordinary users will have problems writing these locations, Windows Installer or an Administrator-level account won't. Storing files which users shouldn't have access to in their profiles (especially registration data which just needs to be read) or in the registry under HKCU is almost always frowned upon by system admins. Since your MSI will perform a per machine installation, the logical place for registration information would be either a key under HKLM or a file within the installation folder as mentioned above by Kipling. The registry being preferable IMO.
    Last edited by Arthur; 5th April 2010 at 01:50 PM.

  12. Thanks to Arthur from:

    mlapworth (5th April 2010)

  13. #24

    Join Date
    Apr 2010
    Posts
    32
    Thank Post
    30
    Thanked 1 Time in 1 Post
    Rep Power
    0
    Thanks for your reply, Kipling.

    You asked about the current storage of registration data: the current version of TaskMagic doesn't require registration at all.

    I wasn't really thinking of using HKCU or the docs folder as the main store for reg data. This was just an additional thing done automatically by the program so that if someone installs to their laptop via the network (or however that would work), a copy of the registration info would be stored locally so that the user could use the software on their laptop when not connected to the network. What I had in mind was:

    a) by default, require registration on each machine over t'internet.
    b) BUT allow a path to be specified in tm.config before installation, telling the software where to look for registration info. This means the person installing the software could specify a location on the network to store the registration data, and registration need only be done once.
    c) each time the programs are run, they look for the registration info in the specified location (if no location specified then they'd look in the programdata folder and/or the HKLM section of the registry).
    d) if there is a specified path in step c above, and this path is available, and regsitration data is present at that location, copy the data from there to the local machine (BUT THE QUESTION IS WHERE? HKCU was what I suggested as a possibility in my previus post, because Arthur said that user permissions would not allow the data to be stored in HKLM or in the all users directory / program data directory).
    e) if there is a specified path at step c, but the path is not available, look for the data locally (eg. in HKCU or wherever is the best place to store this - see d above)
    f) if the data canot be found in any of the above locations, presumably it hasn't been registered, so show the registration screen, requiring the user to input the registration key provided, and to be connected to the internet.
    g) The first time the school technician installs and runs the software, s/he will arrive at step f above. If they have specified a network path to store the registration data by modifying tm.config before installation, no other users will need to register, unless the network installation isn't applied to their particular computer.

    Steps d and e are only really needed for those situations where a computer has the programs installed as part of the network installation (and so has the tm.config file installed telling it to look on the network for registration info) and that computer is then used without a connection to the network.

    Would this work? If so, where is a good place to put the reg data in steps d / e above?

    I like your idea Kipling. But I'd like to go one step further in the sense that, if possible, as well as having only one exe file, I'd like to have only one installation CD (ie. avoid separate single user / 10 user / site licence versions).

  14. #25

    Dos_Box's Avatar
    Join Date
    Jun 2005
    Location
    Preston, Lancashire
    Posts
    9,014
    Thank Post
    614
    Thanked 2,194 Times in 1,006 Posts
    Blog Entries
    23
    Rep Power
    632
    Crazy Talk uses a similar system, but goes one step further by actually negating the serial number once registered, so that you have to contact the company to get new ones should you wish to reinstall. I know schools who have refused to purchase it due to the amount of network maintenance time it would cause. Nice software. Lousy licensing method = lost sales.
    Last edited by Dos_Box; 15th December 2011 at 12:19 PM.

  15. #26


    Join Date
    Feb 2007
    Location
    51.403651, -0.515458
    Posts
    9,069
    Thank Post
    232
    Thanked 2,719 Times in 2,007 Posts
    Rep Power
    797
    Quote Originally Posted by mlapworth View Post
    BUT THE QUESTION IS WHERE? HKCU was what I suggested as a possibility in my previous post, because Arthur said that user permissions would not allow the data to be stored in HKLM or in the all users directory / program data directory
    To keep things as simple as possible I think you are going to have to assume that the user doing the installation of Task Magic has the relevant permissions to be able to write to the registry (HKLM) or the install folder (%ProgramFiles%\TaskMagic). If they don't, then they shouldn't be installing software.

    On Vista & 7, you also want to avoid getting into a situation where registry keys and files are being silently redirected to other locations due to UAC virtualization, which happens when a standard user tries to save to protected areas of the file-system and registry. The article below has some really good suggestions on what to do on those OSs.

    http://windowsteamblog.com/blogs/dev...direction.aspx
    Last edited by Arthur; 5th April 2010 at 02:43 PM.

  16. #27

    Join Date
    Apr 2010
    Posts
    32
    Thank Post
    30
    Thanked 1 Time in 1 Post
    Rep Power
    0
    Quote Originally Posted by Arthur View Post
    To keep things as simple as possible I think you are going to have to assume that the user doing the installation of Task Magic has the relevant permissions to be able to write to the registry (HKLM) or the install folder (%ProgramFiles%\TaskMagic). If they don't, then they shouldn't be installing software.
    I agree, but this isn't about when the software is installed. This would happen when either of the TaskMagic programs is run, so that a local copy of the registration data is kept.

    I know that if I am creating or setting registry keys during installation, these should be made in HKLM, but I'm attempting to use a method whereby registration is separate from installation (in order to avoid custom actions). Registration is required if no registration data is found - but once the person installing the software has registered it (following installation), the registration data will be created on the network drive and no other users / computers connected to the internet will need to register.

    So the person installing the software can specify a network path to store the registration data. (no need to store it in HKLM)
    The ONLY time the locally stored data would be needed is if a computer that has had the software installed with a modified config file (ie. telling the computer to look on the network for the reg data) is disconnected from the network, and the user tries to access TaskMagic.

  17. #28

    Join Date
    Apr 2010
    Posts
    32
    Thank Post
    30
    Thanked 1 Time in 1 Post
    Rep Power
    0
    I also meant to add that the registration info would be kept independently of the exe files. So if you uninstalled / reinstalled / updated the software, there would be no need to register again.

  18. #29
    p858snake's Avatar
    Join Date
    Dec 2008
    Location
    Queensland
    Posts
    1,490
    Thank Post
    37
    Thanked 175 Times in 151 Posts
    Blog Entries
    2
    Rep Power
    51
    The type of system I would like is where there is a licensing app/server set up where the license keys and such put into then when the application is installed it is told there is a local licensing server to connect to, And if that server can't be found or not told to look for it during install it can default to outside registering.

    This way you can do things like have 20 concurrent user licenses and install it on all the systems but only 20 users can open and run it.

    And some diagram fun for those that like that stuff:
    Attached Images Attached Images

  19. #30

    Join Date
    Aug 2008
    Location
    Northwest
    Posts
    79
    Thank Post
    1
    Thanked 10 Times in 10 Posts
    Rep Power
    14
    Quote Originally Posted by mlapworth View Post
    ...
    c) each time the programs are run, they look for the registration info in the specified location (if no location specified then they'd look in the programdata folder and/or the HKLM section of the registry).
    d) if there is a specified path in step c above, and this path is available, and regsitration data is present at that location, copy the data from there to the local machine (BUT THE QUESTION IS WHERE? HKCU was what I suggested as a possibility in my previus post, because Arthur said that user permissions would not allow the data to be stored in HKLM or in the all users directory / program data directory).
    ...
    This is the bit thats causing a hiccup, you want the program to copy registration data from the network to the local drive so that if the machine is taken off the network it will still find its licence; but you want that to happen on every run, which implies doing it under standard user permissions. Like Arthur says, your choices of locations are limited there.

    Also what’s to stop someone with a 10 licence version, installing it on a hundred pc’s and then deleting the registration data off the server. All 100 machines will happily look to their local licence copy and work without blinking.




    How about this (based on sibelius’ licensing model).

    • You supply only one CD/download.
    • The CD has the user program and a licence server program.
    • If the purchaser only bought one or two licences then they install them by hand and register with you over the internet as they currently do.
    • If they bought say 10 licences, they:
      • install the licence server on a server (or pc that is always on)
      • start the licence server and “install” a key/file/code emailed from you which dictates how many concurrent users can run the software.
      • Modify a file in the install pack (you suggested tm.config I think) to point to the licence-servers IP address/name.
      • Push out the (now modified) user program over the network to all clients or run it from a network share etc.
    • When a user launches the program it queries the licence-server so ask permission to run (the licence server keeps a count of how many users are currently using the software).


    For home users there’s no simple solution. There will have to be an element of trust, you could use the same key/file/code that the licence server uses and have your client program look locally if the licence-server can’t be found; if the key/file/code has been installed locally then allow it to run. Not much protection but it could have the school details embed within the key so al least there’ll be a splash screen.


    Advantages
    Good on the network because it can be installed everywhere.
    No chance of accidentally going over licence because the licence-server will prevent that.
    Allows you to sell more licensing options, e.g. 100 user, 200 user, 300 user etc.

    Disadvantages.
    More involved changes to your current code base.
    A licence server to write/test.
    Doesn’t address home users needs too well.

SHARE:
+ Post New Thread
Page 2 of 4 FirstFirst 1234 LastLast

Similar Threads

  1. Replies: 4
    Last Post: 12th December 2009, 07:50 PM
  2. URGENT: Need software for scanning computers for software installed on them
    By DAckroyd in forum Network and Classroom Management
    Replies: 8
    Last Post: 19th March 2009, 11:13 AM
  3. GPO on newly added computers
    By rocknrollstar in forum Windows
    Replies: 12
    Last Post: 1st October 2008, 08:51 PM
  4. Replies: 3
    Last Post: 13th April 2007, 02:18 PM

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •