Posts


I am releasing DeVeDe win32 3.16.9 build 6 as of this moment. Download from http://www.majorsilence.com/devede

With this release all deadlock issues while reading progress from the backend programs should be fixed on Windows.

I have re-enabled progress percent on the video conversion stage, mpg to vob stage and the mkisofs stage (for those that are using mkisofs instead of imgburn)

It has the same speed as the current devede with the progress percent turned off but about a 25% speed improvement from previous versions that displayed the percent finished.

I have also added a new program option so you can choose if you are using imgburn or mkisofs.

devede.exe -imgburn will use imgburn if present. If this option or if imgburn is not present devede will fall back to mkisofs. By default the -imgburn option is being set.

Also included is the newest version of imburn at the moment and a newer version of mencoder and mplayer.


A small IronPython script that I used to find files that names were to long to copy to my Windows XP computer.

import clr
import System
import System.IO

# A small IronPython script to copy files and check for filename length violations on windows xp.

def CheckFilesRecursively(target):
    """
    DirectoryInfo target
    """
    
    #directory info
    for x in target.GetDirectories():
        CheckFilesRecursively(x)
        if len(x.FullName) > 200:
            print x.FullName, "lenth:", len(x.FullName)
    
    #FileInfo
    for x in target.GetFiles():
        print x.FullName, "lenth:", len(x.FullName)
        if len(x.FullName) > 255:
            print x.FullName, "lenth:", len(x.FullName)
    

def CopyFilesRecursively(source, target):
    """
    DirectoryInfo source, DirectoryInfo target
    """
    for x in source.GetDirectories():
        print "Creatig Directory:", target.FullName + x.Name
        CopyFilesRecursively(x, target.CreateSubdirectory(x.Name));
    
    for x in source.GetFiles():
        print "Copying:", x.FullName
        try:
            x.CopyTo(System.IO.Path.Combine(target.FullName, x.Name), True); #overwrite
        except System.Exception as ex:
            WriteLine(ex)


def WriteLine(msg):
    filePath = System.IO.Path.Combine("MajorSilence-Debug.txt")
    
    System.IO.File.AppendAllText(filePath, System.DateTime.Now.ToLongDateString() + " " + System.DateTime.Now.ToLongTimeString() + System.Environment.NewLine)
    System.IO.File.AppendAllText(filePath, msg.Message + System.Environment.NewLine + msg.StackTrace + System.Environment.NewLine)
    System.IO.File.AppendAllText(filePath, System.Environment.NewLine + System.Environment.NewLine)


if __name__ == "__main__":
    help_msg="""
    -s source directory to copy files
    -t target directory to copy files
    -c if found it will copy the -s to the -t if not found -s and -t will have filename length check run
    -h Display Help
    """
    source_path=""
    target_path=""
    copy_source=False
    help=False
    for i, x in enumerate(System.Environment.GetCommandLineArgs()):
        if x == "-s": # source
            source_path = System.Environment.GetCommandLineArgs()[i+1]
        elif x == "-t": # target
            target_path = System.Environment.GetCommandLineArgs()[i+1]
        elif x == "-c": # Copy source to target
            copy_source = True
        elif x == "-h" or x == "--help":
            help=True


    e_length = len(System.Environment.GetCommandLineArgs())
    if help or System.Environment.GetCommandLineArgs()[e_length-1] == "check-filename-length.py":
        print help_msg
        System.Environment.Exit(0)

    print "source path:",source_path
    print "target path:",target_path
    
    if copy_source:
        CopyFilesRecursively(System.IO.DirectoryInfo(source_path), System.IO.DirectoryInfo(target_path))
    else:
        if source_path != "":
            CheckFilesRecursively(System.IO.DirectoryInfo(source_path))
        if target_path != "":
            CheckFilesRecursively(System.IO.DirectoryInfo(target_path))


I have uploaded a new msi package of DeVeDe 3.16.9 Build 2. It has disabled the percentage progress on what I believe is everything and now only has pulsing progress bars. This should alleviate all dead lock issues when running DeVeDe on Windows; at least I hope it does as I hardly ever run into the issue it is hard to tell. Over the coming weeks (months) I am hoping to re-enable the percentage progress bars. I figure it is better to have working program then one that only works partially.

Download from the DeVeDe page http://majorsilence.com/devede.


When you need to free up space on a virtual machine (Windows XP/2003/Vista/7) use sdelete (Zero free space) http://technet.microsoft.com/en-us/sysinternals/bb897443.aspx.

Boot the vm. Defrag the drive. Run: sdelete -z c:

Shut down the vm

Using VirtualBox do the following: VBoxManage modifyvdi “/path/to/vmDisk.vdi” –compact

Newer versions: VBoxManage modifyhd “/path/to/vmDisk.vdi” –compact

The path must be the full path.