TFS: Calling -i two timesSolved

Hi guys,

Always pushing TFS to the limit of itself!

Ok, in a standard server update procedure, I stop TFS service, update it's files, then call -i again to register and start the service.

But I was fooled because TFS sends an error if the service is already registered, even if it is not active. Ok, fine, but it would have been great to have it simply ignore that fact and start the service again. (I added more code to handle the fact that I have to manually start the server in this case.)

Here is a suggestions: when calling -i, if the service is already registered and the firewall already set, simply ignore those facts and start the service, returning a nice "success" code, since this is the intended behavior (at least, the understood behavior) that after calling -i the service is registered, the firewall is set, and the service is running.

Actual behavior:

C:\...>TurboFloatServer.exe -i 2014-Jan-21 13:38:25.095845: Service installed successfully.

[Then you simply "stop" the service.]

C:\...>TurboFloatServer.exe -i 2014-Jan-21 13:38:30.451149: CreateService failed (1073)

Desired behavior:

C:\...>TurboFloatServer.exe -i 2014-Jan-21 13:38:25.095845: Service installed successfully.

[Then you simply "stop" the service.]

C:\...>TurboFloatServer.exe -i 2014-Jan-21 13:38:30.451149: Service installed (or started) successfully.

Best regards,Alexandre Leclerc

You're right. Reinstalling should succeed. This will be fixed in the next version.

This has been fixed in TFS 3.5.4, out now. (You can get it here).

Hi Wyatt,

Some few notes on my latest test with TFS 3.5.4:

- If you manually stop TFS service, then call TFS -i, it sends a nice message that it's already installed but the service is not restarted automatically. It's still stopped.

- English is not my primary language, but should the message "The service has already be installed" be read "has already been installed"? I'm asking because it sounds weird, but it might just be alright like that. (Or much simpler: "Service re-installed successfully." -- simply add the "re-" to the default message.)

- Firewall entries are ok even if you play with them. The only instance I found is that if you only disable the rules, they are not enabled again after a call to -i. But if you disable one (TCP) and delete the other (UDP), then they are both added again and enabled.

Best regards,Alexandre Leclerc

English is not my primary language, but should the message "The service has already be installed" be read "has already been installed"?

Yep, you're right, that's a typo.

- If you manually stop TFS service, then call TFS -i, it sends a nice message that it's already installed but the service is not restarted automatically. It's still stopped.

You're right. In 3.5.4 we just modified the installation to fix broken things. But we didn't make it so it should start the service.

We'll fix that.

- Firewall entries are ok even if you play with them. The only instance I found is that if you only disable the rules, they are not enabled again after a call to -i. But if you disable one (TCP) and delete the other (UDP), then they are both added again and enabled.

Maybe it would be better behavior if we just forcefully re-enbabled disabled firewall entries.