FastView 0.3.0

Nach dem ich ja gestern erste Version 0.2.2 fertig hatte, gibt es heute schon Version 0.3.0! Das ganze ist dem Umstand geschuldet, dass mein System, dass mein Bugfix von gestern nicht wirklich funktioniert hat. Jetzt habe ich FastView noch mal überarbeitet, und es gibt jetzt Optionen. Dort kann man zum einen die Taste einstellen, mit der FastView ausgelöst werden soll. Bitte nur Tasten benutzen, die man nicht bei der Eingabe von Dateiname benutzt, sondern tritt der gleiche Bug wie vorher wider auf… (Standard ist die Pause-Taste). Zum anderen kann man in den Optionen auch die Automatische Update-Funktion deaktivieren.

Dann gibt es noch eine Änderung für Entwickler: Mit dem „Dateitypen“ „dir“ und „default“ (ohne Punkt!) kann man jetzt auch Plugins  für Order und nicht erkannte Dateien schreiben.

Weiterlesen

FastView 0.2.2: Bugfix

Vor ein paar Tagen hat ein Leser hier (Fraggle) mich per Mail auf eine Bug aufmerksam gemacht: Wenn man im Windows Explorer umbenannt hat, und dabei ein Leerzeichen eingefügt hat, dann wurde auch FastView geöffnet. Dadurch wurde dann das Umbenennen abgebrochen…

Jetzt habe ich einen Bugfix veröffentlicht (sollte ab morgen im Autoupdate sein), aber dieser hat leider auch eine Nachteil: Bei öffnen von FastView wird der Inhalt der Zwischenablage verworfen. Das ganze hat folgenden Hintergrund: Wenn man die Leertaste drückt, und ein Explorer das aktive Fenster ist, dann wird an den Explorer Strg+A und Strg+C gesesendent, dadurch wird entweder ein „FileDropList“ oder ein Text in die Zwischenablage kopiert. Und nur wenn es die Liste an Dateien ist, wird FastView geöffnet. Zwar kann ich den Inhalt der Zwischenablage auslesen, aber ich schaffe es nicht, den Inhalt auch wieder zurückzuschreiben, also ist der Inhalt leider verloren…

Langfristig ist dies natürlich keine befriedigende Lösung, (ich betone noch mal, dass FastView immer noch ein PoC ist) daher werde ich in der nächsten Version ein Optionsmenü einbauen, wo man dann die Tasten aussuchen kann, mit der FastView geöffnet werden kann. Ich sehe keine Möglichkeit, dieses Problem anders zu umgehen. Auf dem Mac hat Apple sicherlich eine entsprechende API-Funktion, um auszulesen, ob der Explorer im Edit-Modus ist, aber das gibst auf Windows scheinbar nicht… (ich habe eh nur über eine COM-Schnittstelle darauf Zugriff, die schon seid Win98 nur noch aus Kombabilitätsgründen dabei ist…)

Weiterlesen

FastView Plugins entwickeln

Kleine Vorbemerkung: Ich habe erstmal wider eine DSL-Verbindung, aber nur 1000 kb/s…

Ich hatte es ja schon versprochen, jetzt gibt es ein Tutorial wie man FastView Plugins entwickeln kann. Das ganze habe ich so geschrieben, das man es auch verstehen kann, wenn man sich noch nicht so viel mit Visual Studio beschäftigt hat, aber C# Kenntnisse sollten schon vorhanden sein…

Lange Rede kurzer Sinn: Hier sind die Downloads:

Tutorial: FastView Plugins entwickeln (PDF)

FastView Zip-Plugin Sourcecode

Weiterlesen

Fast View 0.2.0

Nach ewiger Zeit gibt es eine neue Version von Fast View! Diese Version ist vollkommen anders als die erste, da ich sie fast vollständig neu geschrieben habe. Es hat leider sehr lange gedauert, aber ich glaube es hat sich gelohnt.

Hier ist der Changelog:

Bugfixes:

  • kein Absturz mehr, wenn MP3s geöffnet werden
  • Dateien werden nach schließen des Fensters freigegeben
  • kleinere interne Änderungen

Änderungen:

  • Neuer Hintergrund(danke an whsprogger)
  • Mehr Bilder, weniger Buttons

Neue Features: Weiterlesen

Ein paar Änderungen am Blog

Heute habe ich mal wieder die Struktur des Blogs überarbeitet, es gibt jetzt Unterseiten für Fast View und SimpleScreenshot. Ich werde jetzt auch in den Beiträgen nur noch diese Seite verlinken,  damit nicht jemand eine alte Version herunterlädt.

Zudem habe ich versucht Leerzeilen in Kommentaren zu erlauben, aber es ist mir leider nicht geglückt…

Fast View braucht einen Neuanfang

Nachdem ich in den letzten Tagen endlich mal wieder ein paar Stunden für Fast View gefunden habe, hat sich herausgestellt, dass der Code viel zu unübersichtlich und verschachtelt ist. Kleine Kostprobe gefällig?

private static IntPtr _hookID = IntPtr.Zero;
 private static LowLevelKeyboardProc _proc = new LowLevelKeyboardProc(InterceptKeys.HookCallback);
 private static Form1 form;
 private const int WH_KEYBOARD_LL = 13;
 private const int WM_KEYDOWN = 0x100;

 [DllImport("user32.dll", CharSet=CharSet.Auto, SetLastError=true)]
 private static extern IntPtr CallNextHookEx(IntPtr hhk, int nCode, IntPtr wParam, IntPtr lParam);
 private static string GetExplorerPath()
 {
 try
 {
 ShellWindows shellWindows = new ShellWindowsClass();
 int foregroundHandle = GetForegroundWindow().ToInt32();
 foreach (InternetExplorer ie in shellWindows)
 {
 if (ie.HWND == foregroundHandle)
 {
 return ((IShellFolderViewDual2) ie.Document).FocusedItem.Path;
 }
 }
 }
 catch (Exception)
 {
 return null;
 }
 return null;
 }

 [DllImport("user32.dll", CharSet=CharSet.Auto, SetLastError=true)]
 private static extern IntPtr GetForegroundWindow();
 [DllImport("user32.dll")]
 [return: MarshalAs(UnmanagedType.Bool)]
 static extern bool SetForegroundWindow(IntPtr hWnd);
 [DllImport("kernel32.dll", CharSet=CharSet.Auto, SetLastError=true)]
 private static extern IntPtr GetModuleHandle(string lpModuleName);
 private static IntPtr HookCallback(int nCode, IntPtr wParam, IntPtr lParam)
 {
 if (((nCode >= 0) && (wParam == ((IntPtr) 0x100))) && (Marshal.ReadInt32(lParam) == 0x20))
 {
 form.SpacePressed(GetExplorerPath());
 }
 return CallNextHookEx(_hookID, nCode, wParam, lParam);
 }

Weiterlesen

Quick Look für Windows Download

Nun gut, der Titel ist für Google gemacht, aber der Kern stimmt:

Es gibt eine erste Version von meinem Quick Look Klon für Windows zum Download! Ich habe das Werk „Fast View“ genannt, nur zur Sicherheit…

Momentan werden die folgenden Dateiformate unterstützt:

  • (Ordner)
  • *.ico
  • *.bmp
  • *.jpeg
  • *.jpg
  • *.gif
  • *.png
  • *.dib
  • *.jpe
  • *.jfif
  • *.tif
  • *.tiff
  • *.avi
  • *.wmv
  • *.mpeg
  • *.wav
  • *.ogg
  • *.mod
  • *.ig
  • *.s3d
  • *.xm
  • *.mp3 1

1: Mit MP3 gibt es ein Lizenz Problem: Ich bin mir nicht sicher ob ich einen MP3 Decoder in die Anwendung einbauen darf… Darum folgende Lösung: Damit MP3s abgespielt werden können wird die Datei „ikpMP3.dll“ benötigt. Die befindet sich in dem ersten download auf der Seite http://www.ambiera.com/irrklang/downloads.html Die Datei muss einfach in das Verzeichnis mit dem Rest der Dateien kopiert werden, und schon gibst MP3s

Weiterlesen

Quick Look für Windows?

Edit: Es gibt eine erste Version zum Download! http://niklas-rother.de/artikel/quick-look-fur-windows-download/

Nach dem ich mal auf einem Mac vor ein paar Tagen das Feature „QuickLook“ gesehen habe, verfolgt mich der Gedanke, das auch auf Windows haben zu wollen. Doch so etwas gibt es einfach nicht!

Nur am Rande: QuickLook ist ein Tool, das man über die Leertaste aktiviert, und einem dann in einem Popup das ausgewählte Bild, den Film oder das iWork Document zeigt. Durch Plugins kann man auf praktisch alle Dateien einen kurzen Blick werfen. Natürlich in Apple Manier mit Integration in TimeMashine & Co.

Was macht man, wenn es etwas nicht gibt? Es selber machen! Also werde ich wohl in den nächsten Tagen mir mal was in der Art überlegen. Vielleicht kann man da ja was machen…