Messages - MilesAhead [ switch to compact view ]

Pages: prev1 ... 1525 1526 1527 1528 1529 [1530] 1531 1532 1533 1534 1535 ... 1541next
7646
I'm not familiar with xfire, but I'm not into gaming so my ignorance is infinite there. :)  I was just thinking where MediaInfo provides a .dll the play time could be had for each file.  The shell extension would have to get the filenames from the shell or it could just use the Copy to clipboard trick if it was an AHK app, make the dll calls into the MediaInfo library and do the math.  Could even just use a MsgBox to give the results.  Doesn't have to be fancy.

Hours minutes and seconds are just harder to add in your head than decimal.

7647
If you have MediaInfo installed and hover the mouse you can get a tooltip with the play time of the video clip and some other info.  But I've yet to see a shell extension where you can select multiple media files, right click to select a command, and get the total play time.  Even if you drag & drop a bunch of videos onto MediaInfo I don't think there's any option for total play time of all the clips.  Would be very convenient for those of us who like to burn discs full of .avi files or whatnot.

7648
You can get the Express version from the main web site.  I don't know how many features are cut out but I think the main one is it won't delete a partition. But you can always use Cute or another partition program to delete to get free space, then use the Paragon to do whatever.

7649
ContextMenu Commander / Re: ContextMenu Commander
« on: March 07, 2009, 12:09 PM »
afa opening a specific tab in the property page, I wrote this for CommentConfig and it's hard-wired to open the Comment tab, but it could be generalized.

What's not shown in this code snip is processing WMDropFiles message.
I load a StringList with the file names from the drag & drop. The way
I used it, if the CommentConfig program was open you could drag & drop
a bunch of files onto the program form and it would open them all to the
Comment Property Page Tab if it existed, instead of doing it by hand for
each file.

sei is an array of SHELLEXECUTEINFO structs with the same length
as FileList that you find out by handling WMDropFiles.

for each file dropped it does ShellExecuteEx with the 'properties' verb.
Then it looks for a child window with a Title containing whatever string
you are looking for.  In this case 'Comment'

procedure TForm1.ProcessFiles;
var
  x: Integer;
  CharsCopied: Cardinal;
  WindowHandle, CommentHandle: HWND;
  MyMsg: TMessage;
  AnError, Found: boolean;
  MaxTabs: Integer;

begin
  MaxTabs := 4;
  for x := 0 to Count - 1 do
  begin
    AnError := False;
    Found := False;
    ZeroMemory(@sei[x], sizeof(SHELLEXECUTEINFO));
    sei[x].cbSize := sizeof(SHELLEXECUTEINFO);
    sei[x].fMask := SEE_MASK_INVOKEIDLIST;
    sei[x].lpVerb := 'properties';
    sei[x].nShow := SW_SHOW;
    sei[x].lpFile := PChar(FileNameList[x]);
    sei[x].Wnd := Handle;
    if not ShellExecuteEx(@sei[x]) then
      raise Exception.Create('ShellExecuteEx Failed!');
    Sleep(500);
    WindowHandle := GetForegroundWindow;
    MyMsg.Msg := PSM_SETCURSEL;
    MyMsg.lParam := 0;
    MyMsg.wParam := 1;
    while (not AnError) and (MyMsg.wParam < MaxTabs) and (not Found) do
    begin
      if not PostMessage(WindowHandle, MyMsg.Msg, MyMsg.wParam, MyMsg.lParam) then
      begin
        ShowMessage('PostMessage Error!');
        AnError := True;
      end;
      Sleep(200);
      CommentHandle := GetWindow(WindowHandle, GW_CHILD);
      CharsCopied := GetWindowText(CommentHandle, Title, sizeof(Title) - 1);
      if Pos('Comment', Title) > 0 then
        Found := True;
      Inc(MyMsg.wParam);
    end; // While
  end; // For
end; // ProcessFiles

7650
Also you might look for KeyHH.  I'm pretty sure you can use it to display HtmlHelp without the ms updates.

Pages: prev1 ... 1525 1526 1527 1528 1529 [1530] 1531 1532 1533 1534 1535 ... 1541next
Go to full version