# TiVo Desktop for windows really needs a performance overhaul



## morac (Mar 14, 2003)

Warning this is going to be a complaint post, but it is a valid complaint.

TiVo Desktop 2.5.1 works fine for me for the most part. It has an annoying habit of forcing me to close and reopen TiVo Desktop in order to get the program list to repopulate (especially if any programs are deleted/added while Desktop is open), but other than that it works.

My main complaint with TiVo Desktop started with version 2.2 I believe (or whatever version added the history). The problem is that any time TiVo Desktop or TiVo Server is run, the program scans every single file in it's cache directory as well as a few other files on the disk. On my machine there are about 5000 files in the cache folder which means it takes a few minutes for TiVo Desktop to open. 

It also adds a few minutes to the loading time for Windows because even if you set TiVo Server to not run at windows start up, it will still run and scan the cache files and then exit (unless scanning takes too long in which case it just runs). This is especially annoying on my laptop where I don't want TiVoServer.exe running the majority of the time. 

Add into this that tivotransfer.exe appears to have a memory leak in it such that the more you transfer the more memory it takes up. After about 12 hours of transfers, mine is currently at over 275 MB of memory when normally it uses about 2 or 3 MB.

I found a few work arounds, namely clearing the cache periodically, disabling TiVoServer using msconfig (and re-enabling it any time you need to start the server or make a preference change in TiVo Desktop  ) and stopping and starting tivotransfer.exe periodically (type tivotransfer.exe /stop followed by tivotransfer.exe /start), but TiVo Desktop really needs a performance overhaul.


----------



## BWilliamsDC (Jul 29, 2005)

Count your blessings. I have about ~2,000 total files and couldn't get it to start up. I removed some of my shortcuts in the Tivo Recordings directory to get it down to 184 files, and after waiting 20 minutes, I got fed up with it and went out to see a movie, wondering if it would be up when I got back home (it was).

I decided, then, to time it by starting Tivo Desktop and checking back every five minutes. I'm now at 15 minutes and still waiting. It took 23 minutes... came up while I was writing this.

I'm seriously considering uninstalling and trying to clean out any evidence that I purchased "Plus". The encoding-on-the-fly is much slower than realtime (and I'm not going to purchase a new computer, when it does everything else I need, just to encode video on the fly). Worse, Tivo Desktop was never slow until I added Plus and it started to scan shortcutted folders for things it could convert. Ah well.

Edit: Meant to write -- it feels very beta to me as well. Even when I could get Tivo Desktop to run, when I went to my HD I couldn't always see my computer. When I could, it wasn't populated with files. Finally, when I dropped all but one shortcut in Tivo Desktop, some files that were no longer available started to display on the HD... of course not transferable as I'd removed the shortcut. The files that actually are still available still aren't showing. Mehhhhhh.


----------



## morac (Mar 14, 2003)

BWilliamsDC said:


> Count your blessings. I have about ~2,000 total files and couldn't get it to start up.


I'm not talking about the number of video files, I'm talking about the number of files in TiVo's cache directory. I have only a handful of files in my video directory, but over 5000 cache files. and it was taking forever to load. Once I removed all the cache files, it loaded instantly.


----------



## steve614 (May 1, 2006)

I'm curious as to what these cached files are.
Info on all the shows that have been transferred using TD?


----------



## morac (Mar 14, 2003)

The cache files average at about 700 bytes and there is one for every program that has ever been on your TiVo when you scanned for programs (this is why the program list loads faster after the first use). In addition there is also one for any music, photo or video file that has ever been served as part of TiVo Server (there is no reason for this). There are a few other cached items, but the above make up the bulk of what's there.

While caching in itself is not a bad thing, the need to scan every single cache file when both TiVo Desktop and TiVo Server load is a very, very bad idea. That, along with scanning every file in the My TiVo Recording folder and folder pointed to by a shortcut in that folder, is the main reason why it takes forever to load TiVo Desktop and start windows (with TiVo Desktop installed).

If you have a really fast hard drive (10000 rpm) you might not notice it, but for those of us using laptop hard drives (5400 rpm) there is a big performance hit.

If TiVo Desktop needs to scan the cache file at startup, the cache should be stored in one 3 MB file instead of five thousand 700 byte files since it takes a lot longer to read 5000 small files than 1 medium size file (it has to do with drive seek time). Also one file takes up less drive space than 5000 files because of the way file space is allocated.


----------



## rigger29 (Jun 1, 2007)

morac said:


> I'm not talking about the number of video files, I'm talking about the number of files in TiVo's cache directory. I have only a handful of files in my video directory, but over 5000 cache files. and it was taking forever to load. Once I removed all the cache files, it loaded instantly.


If you right click tivodesktop icon and goto properties you can set the maximum MB for your cache size


----------



## morac (Mar 14, 2003)

rigger29 said:


> If you right click tivodesktop icon and goto properties you can set the maximum MB for your cache size


That only applies to the TiVo Server cache. The cache files I'm talking about are created even if you aren't running TiVo Server (though they are stored in the same place).

In any case the maximum MB is not the problem. The problem is the number of files. I cleared the cache yesterday and it's already up to 667 files. These files take up a total of 756 KB (even though 3 MB of disk space is allocated for them). Extrapolating to 5 MB and you have close to 5000 files which is ridiculous.


----------



## qz3fwd (Jul 6, 2007)

Yeah-the memory leak is really bad. On my machine after 16 hours it had leaked over 600Mb. Luckily my workstation has 4GB of RAM, otherwise it would have crippled the machine. 251 is very rough and crude, either Alpha, or MAYBE Beta level code. Definetly not production grade software. OTOH-that just means it can only get better with time.


----------



## schwingle (Nov 7, 2007)

I have about 1600 shows in my video collection. I started with Desktop plus 2.5.1 and it tries to cache the files and locks up before it ever finishes. I have cleaned out the cache folder and restarted and I get wildly varying results each time. 191 files, 340 files, 210 files, 82 files. I gave up on hosting video through Desktop Plus and am just using PyTivo for video and letting Desktop Plus handle music and pictures. On the upside, Plus is handling 45,000+ songs just fine and pytivo is doing a fair job with my video files. The transfers through pytivo are fast and I have no complaints except for the folders issue.


----------



## saberman (May 4, 2004)

Pioneer with DVD Burner
Using TiVo's USB G Wireless connector
LinkSys SRX400 
PC Hardwired to Router 
I record at medium quality. 

Transferring from the TiVo to the PC using TiVo Desktop is very slow since the fall upgrade. For example a half-hour show recorded at medium quality (596 MB) will take two hours. (I have one transferring now that is 50&#37; done with one hour and eight minutes to go.) I have an hour and a half show (1.576 GB) queued that TiVo Transfer Status says will take 9 hours and 36 minutes to transfer. So for the files that I have queued the estimates are: 

Resolution Show Size Show Length TiVo to PC Time
Medium 596 MB 0.50 Hrs. 2.1 hrs. 
Medium 3.446 GB 3.25 Hrs. 21.0 hrs. 
Medium 1.359 GB 1.25 Hrs. 8.25 hrs. 
Medium 1.576 GB 1.50 hrs. 9.4 hrs. 
Medium 2.099 GB 2.00 hrs. 12.75 hrs. 1

Transferring from the PC to the TiVo is better than real time if the TiVo is not recording. That is I can start a transfer and immediately watch it as it transfers. If the TiVo is recording the transfer from the PC to the TiVo is not real time. However, I use Galleon not TiVo Desktop to publish files on the PC.

EDIT:
Since the transfer from the PC to the TiVo (which is handled by Galleon not TiVo Desktop) is fast enough for my purposes I decided to test using Gallean to transfer from the TiVo to the PC. No difference. A half hour medium resolution (~600 MB) program takes two hours to transfer. Looks like the problems in the TiVo's transmit code.


----------



## VideoGrabber (Sep 11, 2003)

Morac,

where is the TiVo cache directory located? Thanks.

- Tim


----------



## windracer (Jan 3, 2003)

C:\Documents and Settings\<username>\local settings\application data\TiVo Desktop\Cache

(or substitute C:\Users instead of Documents and Settings on Vista)


----------



## flyersfan (Nov 11, 2002)

I've found the TivoBeacon taking well over 50mb on Win2003 Server. Fortunately all of the relevant tivo*.exe apps respond to /start and /stop switches, so I wrote a batch file to stop and restart them. I may just schedule it to run every night.


----------



## EVizzle (Feb 13, 2005)

I had some serious problems with previous TivoDesktop versions, but currently I have it running on a 5 year old HP with 512 RAM and a year old Sony laptop with 2GB RAM with about 400GB of shows on the HP and 100GB on the Sony and I have none of the problems you are having. I transfer 2-4 shows per night, and restart the HP once per week and the Sony every 2-3 days. Maybe I am lucky or totally clueless, but no problems anymore!


----------



## VideoGrabber (Sep 11, 2003)

Thanks, Windracer! (re: the cache)

- Tim


----------



## morac (Mar 14, 2003)

EVizzle said:


> I transfer 2-4 shows per night, and restart the HP once per week and the Sony every 2-3 days. Maybe I am lucky or totally clueless, but no problems anymore!


That's at most 28 shows on the HP and 12 shows on the Sony between reboots. Try transferring for about 8 hours straight and tell me what happens.

BTW, technically I rarely reboot my Dell Inspiron 9300 (2 GB RAM) laptop running XP SP2 since I hibernate it. The only time I reboot it are for the monthly Windows updates (if needed).


----------



## VideoGrabber (Sep 11, 2003)

Pre-TiVo, I frequently ran my HP laptop (WinXP, SP2) for months between reboots (mostly Web browsing and software development). After 6-8 hours of TTG transfers from the TiVo Desktop (2.5.1), if it hasn't hung already I'll get an "Internal Error" at least 50% of the time, and have to reboot before I can get it to run again. With "just" half a gig of physical RAM, I'll always get an "Expanding VM notification" part way through.

If one transfer session (3-5 hours) runs without problems, and I make the mistake of starting another without rebooting, it will crap out after 1 or 2 transfers, and I'll come back many hours later to find almost nothing made it off my S3. 

- Tim


----------



## windracer (Jan 3, 2003)

flyersfan said:


> Fortunately all of the relevant tivo*.exe apps respond to /start and /stop switches, so I wrote a batch file to stop and restart them.


Heh, I do that too since I don't have TD running all the time.

For those interested in doing this, just set the TiVo Beacon service to manual, remove the TiVo-related HKLM/Run keys in the registry, and then create a batch file like this:


```
@REM Start the beacon
net start "TiVo Beacon"

@Rem Start the transfer service
start C:\Progra~1\Common~1\TiVoSh~1\Transfer\TiVoTransfer.exe /service /registry /auto:TivoTransfer

@Rem Start the server
start C:\Progra~1\TiVo\Desktop\TiVoServer.exe /service /registry /auto:TivoServer

@Rem Start the notify service
start C:\Progra~1\TiVo\Desktop\TiVoNotify.exe /service /registry /auto:TivoNotify

pause
```
Use the 'stop' directive in a similar batch file to shut everything down (in reverse order).


----------



## morac (Mar 14, 2003)

windracer said:


> For those interested in doing this, just set the TiVo Beacon service to manual, remove the TiVo-related HKLM/Run keys in the registry, and then create a batch file like this:


That doesn't to work, at least not with TiVo Desktop 2.5.1. TiVoServer.exe runs for a second and then exits. In order to get TiVoServer.exe to run the HKCU/Run registry key for TiVoServer needed to be there.

From my testing I've found that the entire TiVoDesktop program throws a fit if it can't find the HKCU/Run Key registry entries. For example if I try to right click on the system tray icon it will thrown up a "The specified service does not exist as an installed service" error if the TiVoServer HKCU/Run key is missing, even if TiVoServer is running. I don't know why since it isn't needed.

My work around for that is to use Startup Control Panel to remove the entry and then add it back in when I want to run TiVoServer.


----------



## windracer (Jan 3, 2003)

Hmmm ... it works fine for me.

Actually, I just checked. I have the registry entries physically there (HKCU/Run) but commented out so they don't actually run at startup. I guess just having the entry there is sufficient, even if it's not runnable.


----------



## morac (Mar 14, 2003)

windracer said:


> Hmmm ... it works fine for me.
> 
> Actually, I just checked. I have the registry entries physically there (HKCU/Run) but commented out so they don't actually run at startup. I guess just having the entry there is sufficient, even if it's not runnable.


That makes sense. Actually it doesn't make sense programming-wise, but from a "Tivo programming" standpoint it does. 

I think if I remember correctly though it needs to have "tivoserver.exe" somewhere in the text. I just changed the path and that works.


----------



## HomeUser (Jan 12, 2003)

windracer said:


> Use the 'stop' directive in a similar batch file to shut everything down (in reverse order).


stop is not a valid command at least in XP

here is what I came up with for the stopTiVoDeskTop.cmd using taskkill

```
@Rem Stop the notify service
@taskkill /s localhost  /IM TiVoNotify.exe /T
@if errorlevel 1 goto end

@Rem Stop the server
@taskkill /s localhost /IM TiVoServer.exe /T
@if errorlevel 1 goto end

@Rem Stop the transfer service
@taskkill /s localhost /IM TiVoTransfer.exe /T
@if errorlevel 1 goto end

@REM Stop the beacon
@net stop "TiVo Beacon"
@if errorlevel 1 goto end

:end
@if errorlevel 1 pause
```


----------



## windracer (Jan 3, 2003)

HomeUser said:


> stop is not a valid command at least in XP


Whoops, you're right. I was thinking of 'net stop' which of course won't work for the non-services. (I don't actually have a stop script).


----------



## flyersfan (Nov 11, 2002)

My server is built to run the Tivo software (and all sorts of other sharing-type applications), so my batch file is more for restarting to free up RAM from the memory leaks. I haven't modified any reg entries or startup behaviour, so the batch file below is a bit simpler:


```
"C:\Program Files\Common Files\TiVo Shared\Transfer\tivotransfer.exe" /stop
"C:\Program Files\Common Files\TiVo Shared\Beacon\tivobeacon.exe" /stop
"C:\Program Files\TiVo\Desktop\tivoserver.exe" /stop
"C:\Program Files\TiVo\Desktop\TiVoNotify.exe" /stop
ping -n 5 127.0.0.1 >NUL

"C:\Program Files\Common Files\TiVo Shared\Beacon\tivobeacon.exe"  /start
ping -n 5 127.0.0.1 >NUL
"C:\Program Files\TiVo\Desktop\TiVoNotify.exe"  /start
ping -n 5 127.0.0.1 >NUL
"C:\Program Files\Common Files\TiVo Shared\Transfer\tivotransfer.exe"  /start
ping -n 5 127.0.0.1 >NUL
"C:\Program Files\TiVo\Desktop\TiVoServer.exe"  /start
```
The ping command inserts a slight delay before moving to the next line without having to install any other apps. Some services need a second or two to get themselves sorted out so that's my quick-n-dirty workaround.


----------



## etz (Sep 8, 2006)

@ Morac..... thanks for the info on the problem of the cache folder. I was pretty annoyed at the long wait times to launch TD and to reboot. After deleting a bunch, now it's pretty snappy again.


----------



## msmart (Jan 3, 2007)

Ditto on the thanks. I too, have found relief in how long it takes TD to load by deleting those cache files. Looks like I've found another housekeeping chore to do.


----------



## saberman (May 4, 2004)

I spoke to TiVo support. They confirmed that the fall software release overloads the TiVo when sending. There is an update for the Series 3 but no fix for the Series 2 and no ETA when a fix can be expected.


----------



## VideoGrabber (Sep 11, 2003)

Last December, flyersfan wrote:
> _...my batch file is more for restarting to free up RAM from the memory leaks_ <

I'd like to give a BIG thanks to you for that batch file! :up: :up: I've been using it for ~6 weeks now, and it's been a real lifesaver. I normally run it at least once a day... depending on how many batches of files I transfer. I never have to reboot my PC anymore, so this is a huge time saver. Without it, the TiVo services would suck up every byte of VM on my system (they've hit 800M+), until it came crashing to its knees.

If not for your contribution, TTG would be a *vastly* less pleasant experience. Thanks again! 

- Tim


----------



## VideoGrabber (Sep 11, 2003)

saberman commented:
> _...the fall software release overloads the TiVo when sending_ <

 What does this mean?

- Tim


----------



## msmart (Jan 3, 2007)

> I'd like to give a BIG thanks to you for that batch file!


At first I wasn't sure how the batch file would benefit me, then I realized my Auto-Transfers only worked right after restarting the PC then no more. Now, after running the batch file to stop/start services the shows "waiting" to be Auto-Transferred to transfer right away. I hope this gets fixed in 2.6. Thanks!


----------



## saberman (May 4, 2004)

VideoGrabber said:


> saberman commented:
> > _...the fall software release overloads the TiVo when sending_ <
> 
> What does this mean?
> ...


According the the TiVo support person I spoke to the fall software release significantly increased the amount of CPU power used in sending a video file to another machine (TiVo or PC). This was fixed in a release for Series 3 TiVos. It has not been fixed in the Series 2 software and there isn't any expected fix date. (I don't know if that means TiVo is working on it and doesn't know when they will have a fix or if it means that the problem is not even scheduled to be worked on.)


----------



## VideoGrabber (Sep 11, 2003)

Ah, OK. Thanks, saberman.

- Tim


----------



## 250 Coupe (Jan 21, 2008)

I started using flyersfan's batch file and wondered if I could get to clear the cache.

I can't get it to work.

I added this between the start and stop sections. The system can't find the path. I tried it with and without the cd C:\ but still no luck.

@rem
CD C:\
del C:\Documents and Settings\Michael\Local Settings\Application Data\TiVo desktop\Cache\*.cache
ping -n 5 127.0.0.1 >NUL
@rem

What am I missing this time?

Tia,
Michael

edit;
I bet that if I CD to the directory before calling the del, it will work but since it started transfering just now, I'll give it a rest.

The reason I want to clear the cache on my machine is to stop a did not respond in a timely manner error when server starts. There were only 700 files in the cache when it started doing this.


----------



## morac (Mar 14, 2003)

You probably need to put quotes around the path as follows:

del "C:\Documents and Settings\Michael\Local Settings\Application Data\TiVo desktop\Cache\*.cache"


----------



## supasta (May 6, 2006)

How about a Mac client? (And not the pay $100 for Toast8 kind of Mac client.)


----------



## VideoGrabber (Sep 11, 2003)

250 coupe commented:
> _The reason I want to clear the cache on my machine is to stop a did not respond in a timely manner error when server starts._ <

Yeah, I used to get the "timely manner" error pretty often, until I nuked the cache manually. When things eventually start slowing down again, I'll nuke it again. I don't see the need to do it constantly.

- Tim


----------



## 250 Coupe (Jan 21, 2008)

morac said:


> You probably need to put quotes around the path as follows:
> 
> del "C:\Documents and Settings\Michael\Local Settings\Application Data\TiVo desktop\Cache\*.cache"


The quotes did the trick. I'm used to DOS and didn't know I'd need them.

Thank you,
Michael


----------



## 250 Coupe (Jan 21, 2008)

VideoGrabber said:


> 250 coupe commented:
> > _The reason I want to clear the cache on my machine is to stop a did not respond in a timely manner error when server starts._ <
> 
> Yeah, I used to get the "timely manner" error pretty often, until I nuked the cache manually. When things eventually start slowing down again, I'll nuke it again. I don't see the need to do it constantly.
> ...


I probably don't need to do it often but wanted to include it because I would probably not remember the cache slows it down unless I reread this thread.

Michael


----------



## raianoat (Jan 27, 2004)

thanks for all the info in this thread. I've been extremely frustrated with TD as of late.


----------



## wkearney (Jan 30, 2008)

Technically you'd be better off using a variable, not a fixed path. Use this instead:


```
del "%USERPROFILE%\Local Settings\Application Data\Tivo Desktop\Cache\*.cache"
```
This will point to your local settings folder regardless of which drive it's on.

Same thing applies for things in the Program File directory:

```
"%ProgramFiles%\Common Files\TiVo Shared\Transfer\tivotransfer.exe" /stop

or

"%ProgramFiles%\TiVo\Desktop\tivoserver.exe" /stop
```
None of my machines use the C: drive for program or settings files.

You can see which variables are available by using the 'set' command when inside a cmd.exe shell.


----------



## cojonesdetoro (Nov 24, 2002)

Thanks. This below does work for me. I have set up a nightly job to do this.

BTW, TD sux. They took a simple thing like a file transfer and made it so complex that breaking was inevitable. I don't blame the programmers. it's usualy some numbnuts in product management that's responsible for things like this.


```
"%ProgramFiles%\Common Files\TiVo Shared\Transfer\tivotransfer.exe" /stop
"%ProgramFiles%\Common Files\TiVo Shared\Beacon\tivobeacon.exe" /stop
"%ProgramFiles%\TiVo\Desktop\tivoserver.exe" /stop
"%ProgramFiles%\TiVo\Desktop\TiVoNotify.exe" /stop
ping -n 5 127.0.0.1 >NUL

del "%USERPROFILE%\Local Settings\Application Data\Tivo Desktop\Cache\*.cache"
ping -n 5 127.0.0.1 >NUL


"%ProgramFiles%\Common Files\TiVo Shared\Beacon\tivobeacon.exe"  /start
ping -n 5 127.0.0.1 >NUL
"%ProgramFiles%\TiVo\Desktop\TiVoNotify.exe"  /start
ping -n 5 127.0.0.1 >NUL
"%ProgramFiles%\Common Files\TiVo Shared\Transfer\tivotransfer.exe"  /start
ping -n 5 127.0.0.1 >NUL
"%ProgramFiles%\TiVo\Desktop\TiVoServer.exe"  /start
```


----------



## 250 Coupe (Jan 21, 2008)

wkearney said:


> Technically you'd be better off using a variable, not a fixed path. Use this instead:
> 
> 
> ```
> ...


Good point.

For a one-off on my own machine, the actual path is fine but for something I'm going to share I should use the environment variables.

I still go out to a DOS prompt and use copy con to create short batch files. Guess I'm just set in my ways.

Michael


----------



## saberman (May 4, 2004)

cojonesdetoro said:


> Thanks. This below does work for me. I have set up a nightly job to do this.
> 
> 
> ```
> ...


I suspect you are running as an administrator. This does not work from a non administrative userid. It also does not work if run in the security context of an admnistrator from a non administrator userid. The TiVoBeacon must be started as a system task while the others must be run in the security context of the logged in user.


----------



## morac (Mar 14, 2003)

saberman said:


> I suspect you are running as an administrator. This does not work from a non administrative userid. It also does not work if run in the security context of an admnistrator from a non administrator userid. The TiVoBeacon must be started as a system task while the others must be run in the security context of the logged in user.


You can use the "runas" command to run the commands as different users from the same batch file. The "runas" command requires a password to be entered, but if you specify the /savecred option then then it won't prompt for the password the next time the script is run.

Another option is to use this runas program which allows you to specify the password in the command line.

So something like this (if running from limited user account):


> "%ProgramFiles%\Common Files\TiVo Shared\Transfer\tivotransfer.exe" /stop
> runas /noprofile /savecred /user:Administrator "\"%ProgramFiles%\Common Files\TiVo Shared\Beacon\tivobeacon.exe\" /stop"
> "%ProgramFiles%\TiVo\Desktop\tivoserver.exe" /stop
> "%ProgramFiles%\TiVo\Desktop\TiVoNotify.exe" /stop
> ...


*Edit 8/13/2008:*

You can use the following commands to start and stop TiVoBeacon.exe instead of running it directly:

net start "TiVo Beacon"
net stop "TiVo Beacon"

The two commands do require Admin access, but you can use the "runas" command with them as follows:
runas /noprofile /savecred /user:Administrator "net start 'TiVo Beacon'"
runas /noprofile /savecred /user:Administrator "net stop 'TiVo Beacon'"


----------



## jubrand (May 11, 2002)

Hey, I'm just posting to thank you guys for this batch file. It works like a charm. :up::up:


----------



## cojonesdetoro (Nov 24, 2002)

Anybody know if the new 2.6 version requires ridiculous hacks just to make it work as expected? 

I think Tivo should look at mfsftp to see how file transfer SHOULD work.


----------



## cojonesdetoro (Nov 24, 2002)

rebekkajoost said:


> Any ideas?


Here's a link that might help:

http://www.google.com/search?q=learn+english


----------



## resanders (Oct 17, 2006)

flyersfan said:


> My server is built to run the Tivo software (and all sorts of other sharing-type applications), so my batch file is more for restarting to free up RAM from the memory leaks. I haven't modified any reg entries or startup behaviour, so the batch file below is a bit simpler:
> 
> 
> ```
> ...


I know it's been a while since anyone has posted here but I just a got my new DELL XPS One which is running Vista. Does this code work with Vista? Also, does it help to transfer files more quickly from TiVo to PC?? Thanks!


----------



## windracer (Jan 3, 2003)

resanders said:


> Does this code work with Vista? Also, does it help to transfer files more quickly from TiVo to PC?? Thanks!


Yes, it should work just fine on Vista (I'm using a similar script on Win7). However, the beacon isn't used in TD 2.7 anymore as they switched to Bonjour, so you'll need to use something like this:


```
@REM Start bonjour
net start "Bonjour Service"

@Rem Start the server
start C:\Progra~1\TiVo\Desktop\TiVoServer.exe /service /registry

@Rem Start the notify service
start C:\Progra~1\TiVo\Desktop\TiVoNotify.exe /service /registry /auto:TivoNotify

@Rem Start the transcoding service
start  C:\Progra~1\TiVo\Desktop\TranscodingService.exe" /auto

pause
```
Finally, using this method does nothing for actual transfder performance. It's just a way to not be running TD all the time, but only on-demand.


----------



## Kelani (Jul 10, 2009)

Wow, so I wasn't the only person who was forced to resort to wrangling with TD via a good 'ol batch file 

Not sure if it still works in 2.7, but for TD 2.6 here's the one batch file I made (the key word being 'one') It had choices to start and stop the relevant services/processes. Since I had my cache-cleaning handled via another mass-cleaner, I didn't do it with this file.

All it does is load/unload Tivo Desktop. It doesn't touch Tivo Server (I kept Server disabled unless I needed it, then just reenabled it in StartupMonitor.)

This batch file calls 3 other free console utilities:

Taskkill.exe 
Sleep.exe
CMdow.exe (hides console windows. IIRC, this one had problems iwth causing false positives on virus scanners, so was replaced with cmdhide.exe)


```
@ECHO OFF
TITLE Tivo Desktop Annoyance Manager

ECHO.
ECHO.
ECHO ========Tivo Desktop Annoyance Manager========
ECHO Press 1 to Start Tivo Desktop
ECHO Press 2 to Kill Tivo Desktop (Default)
ECHO Press 3 to Exit Program
ECHO ===============================
ECHO.

CHOICE /C:123 /N /T:2,6 Choice: 

IF ERRORLEVEL ==3 GOTO End
IF ERRORLEVEL ==2 GOTO Stop
IF ERRORLEVEL ==1 GOTO Load

:Load

REM Load Desktop and hide the console window
CMDOW @ /hid

REM If StartupMonitor is active, kill it, so no prompts.
ECHO Stopping StartupMonitor...
ECHO.
Taskkill /IM startupmonitor.exe

ECHO Starting Tivo Beacon...
ECHO.
net start TivoBeacon2

REM sleep allows beacon to fully load before starting Tivo Transfer
REM which will complain if Beacon isn't loaded.
sleep 5

ECHO Starting Tivo Transfer...
ECHO.
SET KEY=HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
REG ADD %KEY% /V TivoTransfer /D "\"%CommonProgramFiles%\TiVo Shared\Transfer\TiVoTransfer.exe\" /service /registry /auto:TivoTransfer" /F

cd /d "%ProgramFiles%\Common\TiVo Shared\Transfer\"
start /B TiVoTransfer.exe /service /registry /auto:TivoTransfer
sleep 4

ECHO Starting Tivo Desktop...

:: Old directory in v2.4 was program files\Tivo\Desktop\

cd /d "%ProgramFiles%\TiVo Desktop\"

start /B TiVoDesktop.exe


REM Now we can restart StartupMonitor
ECHO Restarting StartupMonitor...

start /B %WINDIR%\StartupMonitor.exe

GOTO End

:Stop

REM CMDOW @ /hid

ECHO.

ECHO Stopping that damn Tivo Beacon Service.

NET STOP TivoBeacon2

ECHO Now we Kill TivoTransfer service and the Tivo Desktop Process...

ECHO.
SET KEY=HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
REG DELETE %KEY% /V TivoTransfer /F

TASKKILL /F /IM TivoTransfer.exe /IM TivoDesktop.exe

ECHO.
ECHO Annoying Tivo Crap Successfully Stopped!


GOTO End


:End
pause
ECHO All Done. Exiting...

exit
```


----------



## morac (Mar 14, 2003)

I never thought to use "reg add" and "reg delete" to trick TiVo Desktop into actually not complaining when trying to do things like access the preference window.

In any case, here's what I use for TiVo Desktop 2.7. I disabled all the registry entries except for TiVoNotify, which I modified to remove the "/auto" parameter. This keeps it from running at startup.

Starting

```
net start "Bonjour Service"
"%ProgramFiles%\TiVo\Desktop\TiVoNotify.exe" /start
```
I then double click the TiVo icon which starts TiVoDesktop.exe and tivotransfer.exe.

Stopping

```
"%ProgramFiles%\TiVo\Desktop\tivoserver.exe" /stop
"%ProgramFiles%\Common Files\TiVo Shared\Transfer\tivotransfer.exe" /stop
"%ProgramFiles%\TiVo\Desktop\TiVoNotify.exe" /stop
net stop "Bonjour Service"
```
I might have to change it to add the TiVoServer object to the registry, just to keep it from complaining.


----------



## morac (Mar 14, 2003)

I decided to come up with my own combined batch file based on the suggestion to use the reg add and delete commands. I used XP's built-in tasklist command to figure out if TiVoNotify.exe is running or not.

If it's running, it stops everything, if it's not running it starts Bonjour and TiVoNotify.exe. I can use TiVoNotifiy to start TiVo Desktop and/or TiVo Server as needed.


```
@echo off
reg query HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v TiVoServer > nul 2> nul
IF %ERRORLEVEL% eq 0 GOTO STOP

:START
reg add HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v TiVoServer /d "\"%PROGRAMFILES%\TiVo\Desktop\TiVoServer.exe\" /service /registry" /f
net start "Bonjour Service"
"%ProgramFiles%\TiVo\Desktop\TiVoNotify.exe" /start
GOTO END

:STOP
"%ProgramFiles%\TiVo\Desktop\tivoserver.exe" /stop
"%ProgramFiles%\TiVo\Desktop\tivotransfer.exe" /stop
"%ProgramFiles%\TiVo\Desktop\TiVoNotify.exe" /stop
net stop "Bonjour Service"
reg delete HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v TiVoServer /f

:END
```
If you don't have TiVoNotify in the HKCU startup registry, you'll need to add that to the batch file as well. I just left it in the registry, but modified it to the following so it doesn't actually stay running at startup:

```
"C:\Program Files\TiVo\Desktop\TiVoNotify.exe" /service /registry
```
If you use Bonjour for something like an Apple TV or the like, simply "rem" out the lines that start and stop the Bonjour service.


----------

