Go to English page

Neuigkeiten

Downloadbeschreibung:

Das Nightly Nuild des GWhoIs-Forks von ViaThinkSoft !
Daniel Marschall
ViaThinkSoft Mitbegründer
Projektbeschreibung:

OIDplus ist eine OpenSource-Datenbanklösung zum Verwalten von Objekt-Identifiern (z.B. "OIDs" oder "DOIs"). Mit OIDplus können Sie Ihre eigene "Registration Authority" betreiben, und ihre erzeugten Objekte entweder öffentlich zur Verfügung stellen, oder nur intern verwalten (versteckt für die Öffentlichkeit). Ihre Objekte und die Schreibrechte darauf können Sie an untergeordnete RAs, also andere Benutzer im System, vererben, sodass diese autonom arbeiten und ihre eigene RA betreiben können.

Die ViaThinkSoft Registration Authority setzt OIDplus 2.0 bereits produktiv ein und bietet Anwendern sogar die Möglichkeit, kostenlose OIDs zu erzeugen.
Daniel Marschall
ViaThinkSoft Mitbegründer
Downloadbeschreibung:

An API written in PHP for the OID repository oid-info.com.

The majority of the functions provided by this API helps developers in creating XML files which can be uploaded to the OID repository to add multiple OIDs, but the API also contains other helpful utilities related to OIDs, UUIDs and the OID repository in general. The XML generation can be useful for Registration Authorities (RAs) that want to deliver their assignments to oid-info.com , but also for people who want to support the OID repository by adding OIDs from public sources.

Get more information about this API
Daniel Marschall
ViaThinkSoft Mitbegründer
Dieses Verhalten ist sinnvoll bei Edit-Controls, die als Suchwort-Eingabe verwendet wird.

procedure TForm1.Edit1Click(Sender: TObject);
begin
  if (Sender is TCustomEdit) and (TComponent(Sender).Tag = 1) then
  begin
    TCustomEdit(Sender).SelectAll;
    TComponent(Sender).Tag := 0;
  end;
end;

procedure TForm1.Edit1Enter(Sender: TObject);
begin
  TComponent(Sender).Tag := 1;
end;
Daniel Marschall
ViaThinkSoft Mitbegründer
function OpenPropertyPage(AFileOrFolder: string): boolean;
var
  ShExecInfo: TShellExecuteInfo;
begin
  Result := False;
  ZeroMemory(@ShExecInfo, SizeOf(ShExecInfo));
  ShExecInfo.cbSize := sizeof(ShExecInfo);
  ShExecInfo.fMask := SEE_MASK_INVOKEIDLIST;
  ShExecInfo.lpVerb := 'properties';
  ShExecInfo.lpFile := PChar(AFileOrFolder);
  ShExecInfo.lpParameters := '';
  ShExecInfo.lpDirectory := '';
  ShExecInfo.nShow := SW_SHOW;
  ShExecInfo.hInstApp := 0;
  Result := ShellExecuteEx(@ShExecInfo);
end;

// Example:

OpenPropertyPage('C:\test123.bmp');
OpenPropertyPage('C:\Windows');
Daniel Marschall
ViaThinkSoft Mitbegründer
function FixedDrive(Drive: char): Boolean;
begin
  Result := (Windows.GetDriveType(PChar(Drive + ':\')) = Windows.DRIVE_FIXED);
end;
Daniel Marschall
ViaThinkSoft Mitbegründer
uses TlHelp32;

function IsDelphiRunning: boolean;

  function ProcessExists(exeFileName: string): Boolean;
  var
    ContinueLoop: BOOL;
    FSnapshotHandle: THandle;
    FProcessEntry32: TProcessEntry32;
  begin
    FSnapshotHandle := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
    FProcessEntry32.dwSize := SizeOf(FProcessEntry32);
    ContinueLoop := Process32First(FSnapshotHandle, FProcessEntry32);
    Result := False;
    while Integer(ContinueLoop) <> 0 do
    begin
      if ((UpperCase(ExtractFileName(FProcessEntry32.szExeFile)) =
        UpperCase(ExeFileName)) or (UpperCase(FProcessEntry32.szExeFile) =
        UpperCase(ExeFileName))) then
      begin
        Result := True;
      end;
      ContinueLoop := Process32Next(FSnapshotHandle, FProcessEntry32);
    end;
    CloseHandle(FSnapshotHandle);
  end;

var
  sBuffer: String;
  iCounter: Integer;
  pcBuffer: PChar;
const
  sWnd: string = 'UQspqfsuzJotqfdups'; // ROT-1 "TPropertyInspector" (only older versions of Delphi)
  rot1_bcb32 = 'cdc43'; // ROT-1 "bcb32"
  rot1_delphi = 'efmqij43'; // ROT-1 "delphi32"
  rot1_bds = 'cet'; // ROT-1 "bds"
  rot1_exe = '/fyf'; // ROT-1 ".exe"
begin
  sBuffer := '';
  for iCounter := 1 to Length(sWnd) do
    sBuffer := sBuffer + chr(ord(sWnd[icounter])-1);
  pcBuffer := AllocMem(512);
  try
    strpcopy(pcBuffer, sBuffer);
    result := FindWindow(pcBuffer, nil) = 0;
  finally
    FreeMem(pcBuffer, 512);
  end;

  sBuffer := '';
  for iCounter := 1 to Length(rot1_bcb32) do
    sBuffer := sBuffer + chr(ord(rot1_bcb32[icounter])-1);
  for iCounter := 1 to Length(rot1_exe) do
    sBuffer := sBuffer + chr(ord(rot1_exe[icounter])-1);
  result := result or processExists(sBuffer);

  sBuffer := '';
  for iCounter := 1 to Length(rot1_delphi) do
    sBuffer := sBuffer + chr(ord(rot1_delphi[icounter])-1);
  for iCounter := 1 to Length(rot1_exe) do
    sBuffer := sBuffer + chr(ord(rot1_exe[icounter])-1);
  result := result or processExists(pcBuffer);

  sBuffer := '';
  for iCounter := 1 to Length(rot1_bds) do
    sBuffer := sBuffer + chr(ord(rot1_bds[icounter])-1);
  for iCounter := 1 to Length(rot1_exe) do
    sBuffer := sBuffer + chr(ord(rot1_exe[icounter])-1);
  result := result or processExists(pcBuffer);
end;
Daniel Marschall
ViaThinkSoft Mitbegründer
Projektbeschreibung:



VNag (ViaThinkSoft Nagios) ist ein Framework für PHP, das es erlaubt, Plugins für Nagios-kompatible Systeme (z.B. auch Icinga2) gemäß den Richtlinien zu erstellen.

Das Download-Paket enthält Dokumentation und Beispiele und eine Vielzahl an neuen Plugins, z.B. um eine WordPress-Installation auf Updates zu überprüfen.

VNag ermöglicht es nicht nur, normale Nagios/Icinga-Plugins zu entwickeln (PHP wird über CLI aufgerufen), sondern erlaubt auch, ein Plugin über das Web zur Verfügung zu stellen:

  • Das ist PHP geschriebene Plugin kann über einen HTTP-Daemon (z.B. Apache) im Browser angezeigt werden. Neben der Anzeige der Nagios-Ausgabe (Summary, Verbose information, Performance data) können beliebige HTML-Ausgaben hinzugefügt werden, um z.B. noch Diagramme zu präsentieren. Es ist nur eine Codebasis erforderlich!

  • Die Web-Ausgabe enthält einen maschinenlesbaren (unsichtbaren) Teil, der mit Hilfe des "web reader"-Plugins von VNag ausgelesen und in das Standardformat für die Überwachung mit einer lokalen Nagios Instanz umgewandelt werden kann. Somit ist es z.B. möglich, mittels Nagios bestimmte Dinge (z.B. eine WordPress-Version) auf einem entfernten System, bei dem kein Shell-Zugriff möglich oder kein Nagios installiert ist, zu überwachen.

  • Es ist auch möglich, Webseiten zu erzeugen, die nur einen unsichtbaren maschinenlesbaren Teil besitzen (bzw. Sie können eine VNag Ausgabe in Ihre bestehende Webseite einbinden), jedoch ohne visuellen Teil. Dieser maschinenlesbare Teil kann optional signiert und/oder verschlüsselt werden.

Im Download-Paket von VNag sind folgende Plugins enthalten:

  • 4images_version: Prüft 4images Installationen auf verfügbare Updates.
  • disk_running: Prüft, ob Festplatten, die über keine SMART-Funktionalität verfügen, online sind
  • file_timestamp: Warnt, wenn Dateien in einem bestimmten Interval nicht aktualisiert wurden, bzw. wenn sie ein gewisses Alter erreicht haben.
  • ipfm: Prüft die Log-Dateien des Tools "ipfm" und warnt, wenn der gemessene Traffic das Monatslimit erreicht.
  • joomla_version: Prüft Joomla Installationen auf verfügbare Updates.
  • last: Prüft die Ausgabe des Tools "last" und warnt, wenn Logins aus verdächtigen IP-Adressen festgestellt wurden.
  • mdstat: Wertet die Datei "/proc/mdstat" aus und warnt, wenn Festplatten in einem RAID-Array ausfallen.
  • mediawiki_version: Prüft MediaWiki Installationen auf verfügbare Updates.
  • net2ftp_version: Prüft net2ftp Installationen auf verfügbare Updates.
  • nocc_version: Prüft NOCC webmail Installationen auf verfügbare Updates.
  • phpbb_version: Prüft phpBB Installationen auf verfügbare Updates.
  • phpmyadmin_version: Prüft phpMyAdmin Installationen auf verfügbare Updates.
  • roundcube_version: Prüft RoundCube Installationen auf verfügbare Updates.
  • smart: Prüft SMART Attribute der Festplatten und warnt wenn kritische Werte entdeckt werden.
  • virtual_mem: Prüft die Größe des virtuellen Speichers (Physikalischer Speicher und Swap).
  • webreader: Lies die Ausgabe eines VNag plugins auf einem entfernten System, übertragen per HTTP.
  • wordpress_version: Prüft WordPress Installationen auf verfügbare Updates.
  • x509_expire: Prüft X.509 (PEM) Dateien und warnt, wenn diese ein gewisses Alter erreichen.
Daniel Marschall
ViaThinkSoft Mitbegründer
Projektbeschreibung:

Die ViaThinkSoft Indexer Suite ist ein Programm, das es ermöglicht, ein Dateisystem zu indizieren und in einer SQL-Datenbank abzubilden. Im Nachfolgenden können diverse Auswertungen stattfinden, z.B. das Suchen von Duplikaten, das Verifizieren der Integrität der Daten bei einem weiteren Durchlauf, das Bestimmen von redundanten Verzeichnissen, oder ein Offline-Browsen durch den Dateisystem-Stamm, während der Original-Medium offline ist.
Daniel Marschall
ViaThinkSoft Mitbegründer
Downloadbeschreibung:

Das Aysalia Dual Pack wurde von mir (Daniel Marschall) herausgegeben und enthält folgende Komponenten:

- Microsoft Visual Basic / C++ Runtime-Libraries
- Aysalia: Zeitalter der Dämonen 1.5.3 (+ VB6-Quelltext)
- Aysalia: Schatten über Aysalia 2.3.1 (+ VB6-Quelltext)
- Installationsquelltext & Ressourcen
- Aysalia DOS 1
- Aysalia DOS 2
- DOSBox mit integriertem Menü für Aysalia DOS 1 und 2 (+ Launcher Quelltext)
Daniel Marschall
ViaThinkSoft Mitbegründer
Projektbeschreibung:

Peg Solitär ist ein Brettspiel für eine Person. Das weitest verbreitete Spielfeld ist kreuzförmig und wird mit 32 Steinen auf 33 Feldern bestückt. Dieses Spiel wird auch als Englisches Solitär bezeichnet.

Weitere Informationen in Wikipedia
Daniel Marschall
ViaThinkSoft Mitbegründer
Attention: This does only work in real mode, i.e. DOS. It does not work in Windows apps!

Enabling numlock:

set_numlock_on PROC
    push    ds
    mov     ax, 40h
    mov     ds, ax        ; go to BIOS Data Area ( http://stanislavs.org/helppc/bios_data_area.html )
    mov     bx, 17h       ; Load Keyboard flag byte 0
    mov     al, [bx]      ; read
    or      al, 20h       ; set bit 5 (numlock) to 1
    mov     [bx], al      ; write
    pop     ds
    ret
set_numlock_on ENDP

Disabling numlock:

set_numlock_off PROC
    push    ds
    mov     ax, 40h
    mov     ds, ax        ; go to BIOS Data Area ( http://stanislavs.org/helppc/bios_data_area.html )
    mov     bx, 17h       ; Load Keyboard flag byte 0
    mov     al, [bx]      ; read
    and     al, DFh       ; unset bit 5 (numlock)
    mov     [bx], al      ; write
    pop     ds
    ret
set_numlock_off ENDP
Daniel Marschall
ViaThinkSoft Mitbegründer
function Ganzzahlig(num: extended): boolean;
begin
  result := num = round(num);
end;
Daniel Marschall
ViaThinkSoft Mitbegründer
function ReadFile(InputFile: string): string;
resourcestring
  LNG_COULD_NOT_OPEN_FILE = 'Could not open file "%s".';
var
  f: textfile;
  tmp: string;
begin
  result := '';

  if not FileExists(InputFile) then
  begin
    MessageDlg(Format(LNG_COULD_NOT_OPEN_FILE, [inputfile]), mtError, [mbok], 0);
    Exit;
  end;

  AssignFile(f, InputFile);
  Reset(f);
  while not Eof(f) do
  begin
    ReadLn(f, tmp);
    result := result + tmp + #13#10;
  end;
  CloseFile(f);
end;
Daniel Marschall
ViaThinkSoft Mitbegründer
Projektbeschreibung:

Peg Solitär ist ein Brettspiel für eine Person. Das weitest verbreitete Spielfeld ist kreuzförmig und wird mit 32 Steinen auf 33 Feldern bestückt. Dieses Spiel wird auch als Englisches Solitär bezeichnet.

Weitere Informationen in Wikipedia
Daniel Marschall
ViaThinkSoft Mitbegründer
Projektbeschreibung:

"Light game" ist ein Knobelspiel, dessen Ziel ist, in einem 5x5 Felder Raster alle Lichter zu löschen.
Daniel Marschall
ViaThinkSoft Mitbegründer
Projektbeschreibung:

"Light game" ist ein Knobelspiel, dessen Ziel ist, in einem 5x5 Felder Raster alle Lichter zu löschen.
Daniel Marschall
ViaThinkSoft Mitbegründer
Downloadbeschreibung:

Im Paket enthalten sind:
- Linux Binaries
- Ausführbare 32-Bit Windows-Anwendung
- Quelltext in C
Daniel Marschall
ViaThinkSoft Mitbegründer
Projektbeschreibung:

In this project, you will find various downloads about the PC version of the ancient game "Plumbers Don't Wear Ties".
Daniel Marschall
ViaThinkSoft Mitbegründer
Projektbeschreibung:

The IPE Artfile Packer/Unpacker tool let you pack and unpack ART files of games by Imagination Pilots, so that you can extract and modify the graphics of the game.

Following games are supported:
- "Blown Away" (1994)
- "Panic in the Park" (1995)
- "Where's Waldo? At the Circus" (1995)
- "Where's Waldo? Exploring Geography" (1996)
- "Eraser Turnabout" (1997)
- "Virtual K'Nex" (1998)
Daniel Marschall
ViaThinkSoft Mitbegründer