Recently Tom approached me about creating an updater program for all the wonderful PBBi resources available here. Tom and I have been working together over the past couple weeks to implement his ideas. Attached is the new installer program for the PBB listings available both here and at Walther Library.
This is a new development project and you may run into some issues. If you do, please let me know the error messages that you get and I will try to correct them. When you run this installer, it will add a custom toolbar to the Libronixi program to start the updater - as well as an icon on your desktop and start menu. No downloads will begin while Libronix is running though.
Features
1. Supports PBB files, Collections, Resource Associates, Annotations, and Workspaces.
2. PBB files go to %PROGRAM FILES%\Libronix DLS\Resources\PBB. StillTruth.com files will have their sub folder and Walther Library will have their sub folder.
3. Collections, Resource Associations, Annotations, and Workspaces all go to MY DOCUMENTS\Libronix DLS, into their own appropriate sub folder
4. Automatically will move existing PBB files to their new expected location (new 11/14)
5. Support for automatic location finding in 64-bit editions of Windows (new 11/29)
6. Abililty to specify a custom location for resource, automatically moving existing files to the new location (new 11/29)
7. Throttled to only 4 active downloads at a time (new 11/29)
8. Added "Auto Updating" capabilities. The application now shows up as a provider in the list. If you select to download it, then the update will download, shutdown the application and install the new version - automatically moving over your custom resource file location (as part of the auto update). (new 12/2)
We are hoping to add support for other resources and file types in the future, but wanted to make this available to you all. If you download everything from both sources, there is approximately 830 MB of resources currently available.
Hope you like it.
You might also be interested in these articles
- gephartr's blog

- Login or register to post comments
User login
Recent comments
- Of course
1 day 22 hours ago - Hi,
I have the same question.
4 days 6 min ago - I was wondering if you could
4 days 9 hours ago - I could use some help...
I
4 days 4 min ago - Hmm. I'm not really sure. I
1 week 4 days ago - The beta testers, we've all
3 weeks 3 days ago - Thank you soooo much
4 weeks 1 day ago - I went searching in L4
Found
4 weeks 1 day ago - Yes, it surprised me too...
4 weeks 2 days ago - The Daily Bible Study Series
4 weeks 4 days ago
Related Content
You might also be interested in these articles:
- Hengstenberg: History of the Kingdom of God Under the Old Testament, Vol. 2
- Word Pictures in the New Testament
- Candlish: The Fatherhood of God
- Hengstenberg: Commentary on Gospel of John, Vol. 1
- James Denney: The Death of Christ
- Patrick Fairbairn: Commentary on the Pastoral Epistles
- Libronix PBB Files


Comments
Hi Gephartr,
What a fantastic idea! Sadly, when I get it going (i.e. click the button and shut down libronix) the "Download Now" button highlights but doesn't seem to do anything when I click.
But thank you for your development here - this is a wonderful idea.
In His service,
Chris.
That'd be one of those bugs we were talking about :-) Bear with us Chris, this will work wonderfully soon.
I've downloaded and installed the tool under Vista.
I get the following error message:
************** Exception Text **************
System.InvalidCastException: Conversion from string "4/30/2007 16:19:57" to type 'Date' is not valid.
at Microsoft.VisualBasic.CompilerServices.Conversions.ToDate(String Value)
at PBBi_Updater.frmMain.GetRemoteFileList()
at PBB_Updater.frmMain.LoadTreeNodes()
at PBB_Updater.frmMain.frmMain_Load(Object sender, EventArgs e)
at System.EventHandler.Invoke(Object sender, EventArgs e)
at System.Windows.Forms.Form.OnLoad(EventArgs e)
at System.Windows.Forms.Form.OnCreateControl()
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl()
at System.Windows.Forms.Control.WmShowWindow(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
at System.Windows.Forms.ContainerControl.WndProc(Message& m)
at System.Windows.Forms.Form.WmShowWindow(Message& m)
at System.Windows.Forms.Form.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
Thanks
karl
Karl,
Out of curiosity, do you know what locale your computer is setup for? From the string ("4/30/2007 16:19:57") you might see that the program / Unix file is output in MM/dd/yyyy format. I'm assuming your computer is set for dd/MM/yyyy format - but would like to verify before trying to address it tonight.
Thanks!
Yes, I am from the UK so my dates are set up accordingly.
Assuming it was a culture / locale issue I have updated the code to work with different date layouts and tested it on my computer. If this is the issue you ran into, all should now work.
Yes, that solved it! Thank you!
Chris,
I just wanted to check in and see if your problems were fixed now. We have run into one other issue related to running on a 64-bit platform and just wanted to verify if there were any remaining issues.
The new splash screen was nice
Down at the bottom you still might want to consider putting (x MB) after the bytes selected string (eg: 10,346,248 bytes selected = 9.87MB )
For reasons I cannot explain it will not download on my system anymore. I think we might need some kind of logging?
Sadly, I have no idea how that happened. Everything was working before I posted it... ;)
Seriously, things are now all fixed. If you remove the old install, download the new and install it the button will now work.
RE: MB instead of bytes display, I can try to add that in the future, but at the moment that is a critical piece of the application functioning properly. :(
This time it did try to download but crashed immediately. I've sent a crash report by email but I'll post the start of it here so that others don't duplicate the error.
(ALSO i'm working on setting up an "issues" repository here that will help stage these kinds of help requests.)
Randy, the installer drops the start menu entry at
allusers/startmenu instead of allusers/startmenu/programs
This causes the entry folder (stilltruth.com) to display at the top of the all programs menu instead of inline with the rest.
The installer has been updated.
1. Found one spot where the file locking may have been happening. Added a time delay to reset the file date/time stamp, and if the change fails it deletes the file so as to download it some other time.
2. Added an event log. It will overwrite upon each start of the application, but will keep a list of events that happen during the current run of the application.
3. Added to the status bar a popup menu for opening Windows Explorer to (1) the Program Files\Libronixi DLS\PBBi folder or (2) the My Documents\Libronix DLS folder. There is also a menu item for opening the event log for the application.
4. The Start Menu icon has been moved down to the Programs menu level.
Something was wrong with the lutherquotebook. There were two identical instances but one of them was named with capital letters
lutherquotebook.lbxoebi -vs- LutherQuoteBook.lbxoeb to Linuxi these were two completely different files (case sensitive) but to Windows they were certainly not. I cross compared them to ensure they were identical and they are so I simply removed one of them. It works fine now.
However I noted that the Walther Library books are not downloading. Perhaps the path setting in the code is wrong?
The walther path should take the format: http://www.ctsfw.edu/library/libronix/
{bookname}There was definitely a coding foobar there. It would only process the first branch of the tree. This has been corrected.
You're great gephartr!
It is currently downloading the Walther Library Works!
You've inspired me to help folks save a little bandwidth and frustration.
Before people use PBBi Updater, perhaps they should try PBBMover.
It moves Stilltruth.com as well as the Walther Library books that have already been downloaded to their necessary directories.
There are a number of errors in the pbbmover.bat. Was this tested? I have found so far?
1. It does not work if the Resources are on other than C: drive.
2. Moves such as "Critical Issues Commentary I" need quotes around the name, the Move command fails
3. Typo on the move of divinit.* line, the destination path is wrong
This is a great idea, it needs testing to be reliable. Use at your own risk.
Plus it copies more than it should - there is a line in the batch file that does a copy of c*.lbxoebi, which copies ANY lbxoeb file starting with C. That copied extra files on my PC.
This is a dangerous batch file - beware!!!
ouch! Dominick you are correct. the C* was an issue of find and replace gone desperately wrong.
I did test it multiple dozens of times on my own system but didn't notice that one. egad. Anyway as noted above it has been removed for these reasons.
Thankfully a more competent programmer (gephartr) took over and placed the intent of this into PBBupdater.
The batch file has been removed.
That was a good idea tcblack. It also made me think, "self - why didn't you do that."
So, the PBBi_Updater knows where these files are supposed to go. So when it gets its file listings it now checks to see if it exists under "Libronixi DLS\Resources" or "Libronix DLS\Resources\PBB." If it is in either location it will automatically move it to its proper file location.
If you have not already downloaded everything, this may be a good update to grab.
Where do I find the file to download. I utilized the PBBi Mover but can't find the PBB Updater. Thanks
Scroll to the top of this article. At the very bottom of the original post is an attachment labeled "Personal Book Builder Updater." Click on this and it will download the ZIP file containing the updater.
gephartr,
There was a request on the newsgroups to define the destination as somewhere other than
c:/program files...../PBBi
I guess it never hurts to ask.
WOW! You guys are totally awesome. This may just kick start me into converting works into this usable format. You all have my deepest appreciation. Is there a good blog on creating and editing PBBi's?
I didn't know of a blog dedicated to building PBBi's but there are a few resources worth checking out. I've cataloged them here and simultaneously created a location to assemble all of the best information.
All you have to do is get an account (Or Log in if you have one) and start contributing!
Brothers,
Thank you for this wonderful new tool.
God Bless,
Steve
i am using vista 64 bit and it has a program files folder and a program files (x86) folder (this is where the libronix folder is located) , the updater puts the files in the program files folder and not in the libronix folder in program files (x86) folder
Kopper,
Thank you for your trouble ticket. I actually am most of the way thru an update to address this exact issue, and fulfill another request or two. Hopefully I will have an updated installer available at the end of next week (at the latest).
Very nice...
Do you use Orca (free tool) to edit the MSI file before you post? I belive you can rig the MSI to upgrade/auto uninstall old versions using this tool...
God Bless,
John
Nope. I just use Visual Studio 2005. With the next post, the installer will automatically uninstall the old version 1st - or possibly the program will provide automatic updates. Still trying to work this out. :)
I want to say it's actually part of the VS 2005 Resource Kit...
I use BITS for updates to my executables at work... If you are interested, do a search for "Updater Application Block" at the MSDN website for sample code and such...
This is a really nice program... Thanks for your hard work...
God Bless,
John
I just wanted to add a new comment that the PBBi_Updater has been updated. The download is now the actual MSI instead of a ZIP. Also, support for 64-bit Windows and custom resource locations has been added.
Please note: you should backup up the mySettings.xml file prior to running future updates if you customize the resource location. If you do not PBB_Updater will probably forget your custom location after any updates.
installed and try to run
get a message and a details button
unhandled exception has occured in your application
object reference not set to an instance of an object
, i can email details if you want
Kopper,
Yes, please email as much detail as you can. Especially a stack trace if you can get one. Also, please, your location in the world in case it is another regional issue.
Thanks.
get error message with details button , can email message if you want it
unhandled exception has occured in your application
object reference not set to an instance of an object
This is a wonderful tool! What an amazing amount of resources for free and automatically downloaded. Thank you very much!
I have just installed and done a new download. Prior to the download I changed the location to my current resource location which is different than the default. After the download I discovered the change did not take. I then tried to make the change, but was unable to do so. I closed down the updater and reopened then tried to change the location still to no avail.
I am using Vista Home Premium with 2 Gig of RAM. All resources downloaded successfully to the default location.
Any thoughts?
Thanks again,
Vaughn
Vaughn,
Could I also ask you for an email? If I could get the log file generated, the folder name that the log file is in, the folder name that is the default, and the folder name that you are trying to change the default to, as well as your location in case of regional issues. (Also, by folder name I mean the full path.)
Thanks.
Hi Randy,
Happy to...how do I email you? I'm sorry I disappeared for a while.
I just reinstalled the program using the latest MSI and the problem remains.
I'm trying to change the location to: d:\libronix resources\pbb
Thanks,
Vaughn
I'm testing on a computer that does not have Libronixi even installed and found that the folder C:\Program Files\Libronix DLS\Resources must exist for the application to start. Nothing needs to go there, but the folder must exist.
For 64-bit users, that may be either C:\Program Files\Libronix DLS\Resources or C:\Program Files (x86)\Libronix DLS\Resources -> I cannot test that scenario as I don't have a 64-bit computer.
Anyway, when I'm not at work I'll try to fix that this weekend.
This bug is now fixed.
The updater was not properly showing any updated resources. This bug has been corrected, in addition to ignoring the time differential of Daylight Savings Time.
I pulled down the latest updater and ran it as indicated but now when I run it I have Application, Stilltruth.com, and Walther Library. When I go to Stilltruth.com I have New and Update. It use to be that I could click on New and get a list of PBBi on Stilltruth, not I get nothing. Any idea as to what may have happened or what step I may have missed?
Thanks.
The servers that the PBBs are hosted on have changed their localtime a couple times, which would have caused us to think that all of our resources had been updated. Which in turn would have caused massive downloads.
With this in mind, the resource library list has been temporarily removed while I convert over to GMT time based time checks. Once this is done, there will be another update with some instructions on what to do in order to get an accurate list of available new and updated resources.
We are sorry for the inconvenience, and hope to have the updater changed sometime this weekend (God willing).
The time checks have been converted to GMT and tested from my location. You should see an available application update inside of PBBi_Updater. Please download this update and install it. Upon running, it should automatically correct all date/time stamps on your local files and once again be able to view the available library list from StillTruth.com.
If you have troubles please let us know. The date/time stamps again have only been tested from my location but should be ok. Also, there have been multiple reports of update issues if you are running one of the original versions of PBB_Updater. If you are and do notice issues it may be worth uninstalling the PBB_Updater and installing from scratch.
Thanks!
Hello and Thank you for your Efforts ,God Bless
The updater is very cool. I've turned a few friends and students onto it. (The "mover" part of it doesn't seem to do anything, however. But I'm not complaining!)
One feature I would love to see -- but this would require some implementation on the part of the hosting site, I'll bet -- is the ability to query a resource or author to find out some info about it. I'd love to right-click "John Q. Somebody" and have a popup window tell something about who it is. I know of lot of users are familiar with most of these authors because they're part of their academic tradition, but most of these guys I've never heard of.
Nevertheless, thanks for the great tool!
Lew
This program was great, but now when I run it I get this:
************** Exception Text **************
System.ArgumentException: The path is not of a legal form.
at System.IO.Path.NormalizePathFast(String path, Boolean fullCheck)
at System.IO.Path.GetFullPathInternal(String path)
at System.IO.FileInfo..ctor(String fileName)
at PBBi_Updater.frmMain.PbbMover(DataRow& dr)
at PBB_Updater.frmMain.LoadTreeNodes()
at PBB_Updater.frmMain.SetStatusDisplay(Int64 toDownload)
at PBB_Updater.frmMain.cmdDownload_Click(Object sender, EventArgs e)
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at System.Windows.Forms.Button.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** Loaded Assemblies **************
mscorlib
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400)
CodeBase: file:///c:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------
PBB_Updater
Assembly Version: 1.1.9.0
Win32 Version: 1.1.9.0
CodeBase: file:///C:/Program%20Files/StillTruth.com/PBB%20Updater/PBB_Updater.exe
----------------------------------------
Microsoft.VisualBasic
Assembly Version: 8.0.0.0
Win32 Version: 8.0.50727.1433 (REDBITS.050727-1400)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/Microsoft.VisualBasic/8.0.0.0__b03f...
----------------------------------------
System
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/Sy...
----------------------------------------
System.Windows.Forms
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5...
----------------------------------------
System.Drawing
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d...
----------------------------------------
System.Runtime.Remoting
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Runtime.Remoting/2.0.0.0__b7...
----------------------------------------
System.Configuration
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Configuration/2.0.0.0__b03f5...
----------------------------------------
System.Xml
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e08...
----------------------------------------
System.Data
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400)
CodeBase: file:///C:/WINDOWS/assembly/GAC_32/System.Data/2.0.0.0__b77a5c561934e089...
----------------------------------------
Can anyone help?
THANK YOU
This has been fixed now.
I suggest you delete C:\Program Files\StillTruth.com\PBBi Updater\fileCheckSums.xml
and try again. :-)
I've been using you're wonderful updater program since it came out. I recently had to replace my laptop and this one has Vista 64 on it. I'm getting the same error message as Mike (see below). I have uninstalled and reinstalled. I do keep my resources on the D drive so I edited the xml file to reflect that. In reading the log from the run the last line says "Displaying New Resources".
I'd appreciate any help you can provide.
Thanks for the great help this program provides,
Luther Locklin
************** Exception Text **************
System.ArgumentException: The path is not of a legal form.
at System.IO.Path.NormalizePathFast(String path, Boolean fullCheck)
at System.IO.FileInfo..ctor(String fileName)
at PBBi_Updater.frmMain.PbbMover(DataRow& dr)
at PBB_Updater.frmMain.LoadTreeNodes()
at PBB_Updater.frmMain.frmMain_Load(Object sender, EventArgs e)
at System.EventHandler.Invoke(Object sender, EventArgs e)
at System.Windows.Forms.Form.OnLoad(EventArgs e)
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl()
at System.Windows.Forms.Control.WmShowWindow(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** Loaded Assemblies **************
mscorlib
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.3074 (QFE.050727-3000)
CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v2.0.50727/mscorlib.dll
----------------------------------------
PBB_Updater
Assembly Version: 1.2.0.0
Win32 Version: 1.2.0.0
CodeBase: file:///C:/Program%20Files%20(x86)/StillTruth.com/PBB%20Updater/PBB_Updater.exe
----------------------------------------
Microsoft.VisualBasic
Assembly Version: 8.0.0.0
Win32 Version: 8.0.50727.3053 (netfxsp.050727-3000)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/Microsoft.VisualBasic/8.0.0.0__b03f...
----------------------------------------
System
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/Sy...
----------------------------------------
System.Windows.Forms
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5...
----------------------------------------
System.Drawing
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d...
----------------------------------------
System.Runtime.Remoting
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Runtime.Remoting/2.0.0.0__b7...
----------------------------------------
System.Configuration
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Configuration/2.0.0.0__b03f5...
----------------------------------------
System.Xml
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.3074 (QFE.050727-3000)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e08...
----------------------------------------
System.Data
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.3053 (netfxsp.050727-3000)
CodeBase: file:///C:/Windows/assembly/GAC_64/System.Data/2.0.0.0__b77a5c561934e089...
----------------------------------------
************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
For example:
When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.