DELPHI4Test2011ref UNIVERSUMS HISTORIA | 2011V24 | enproduktion | Senast uppdaterade version: 2014-10-31

 

innehåll · webbSÖK äMNESORD på denna sida Ctrl+F

 

 

Reception — INLEDNINGSDOKUMENT Delphi4Test2011 — uppdaterat Okt2014

 

Välkommen till DELPHI4Test2011

ditt gratisprogram med enkla basverktyg för bildhantering, grafritning och textsökning

———————————————————

av BellDharma Jul2011

 

Se

Uppdaterad Version 2014 med Buggfixar

— vilka fel som fanns i föregående version, och hur de reparerats — och vad som väntar runt hörnet.

 

 

manualen från start

bild

graf

text

installation

tangentkommandon

tangentkommandon bild

tangentkommandon graf

tangentkommandon text

Din Egen Användargaranti

 

 

 

Enhetsåtkomsten för sökverktyget

 

Skärmdumpar i sammanställning från 24Maj2011

DELPHI4Test2011, enhetsåtkomst för sökverktyget

i 4 olika Windows operativsystem

Exempel från artikelförfattarens egna datorer

[MARKÖRPILEN förminskad har lagts till i efterhand för att visa markörens position]

 

 

     »AccessLogo» INDIKERAR att enheten är KLAR [den innehåller lagringsmedia — kort, disk, diskett].
DELPHI4Test2011 känner automatiskt av och uppdaterar [1 gång i sekunden] drivenhetsdisplayen om man insätter [AccessLogon visas] eller avlägsnar [AccessLogon tas bort] något lagringsmedium i respektive enhet.
— Man aktiverar/avaktiverar
DriveSelect med D, markerar enheterna med den löpande orangePilen, den kopplar tangentbordets PilHöger/PilVänster som driver markören i stegbeteckningarna vågrät och orangepilen lodrät, man väljer med ENTER.
— Frånsett Windows XP originalet [inte ServicePack 2] med enhet A och Windows Vista med kortenheterna G-J, ges inget avbrott med ENTER trots att inget lagringsmedium finns inne; DELPHI4Test2011 visar endast ett textmeddelande i statusraden av typen



Inga dialogrutor att klicka av. [Jämför — däremot — Windows från Filutforskaren].
— För de övriga fallen [tom enhetA XP-original, tom enhetG-J Vista] kommer det fram TVÅ dialogrutor [exakt lika »Windows — ingen disk»] som Windows kräver måste klickas av om man ändå försöker med ENTER i DELPHI4Test2011.

 

operativsystem

utseende — DELPHI4Test2011, enhetsåtkomst för sökverktyget

kommentar

Windows

95

133 MHz

— Äldre FloppyEnhet;

— Den ger ifrån sig en mindre ljudmatta då GetVolumeInformation läser av enheten — då ingen diskett finns inne.

Annars tyst och fin.

— En diskett bör finnas inne för att inte diskettenhetsavläsningen ska fördröja pilningsfunktionen.

— Påtagligt snabb programexekvering, trots den äldre standardens (10ggr) lägre processorfrekvens.

 

— Observera för Windows 95 att bildskärmsinställningen måste vara True Color [32-bitar], annars fungerar inte DELPHI4Test2011 [Access violation, fel filer öppnas i FindText].

Windows

XP

ServicePack 2

2,61 GHz DualCore

XP ORIGINALET [PackardBell 1,5 GHz som höll i 6 tuffa år] visar andra beteckningar [RQ...] samt kräver avbrottsdialog för A-enheten om ingen diskett finns inne OM man ÄNDÅ trycker ENTER med A-enheten markerad.

— FloppyEnheten ger mindre ljud ifrån sig om ingen diskett finns inne då GetVolumeInformation körs.

Windows

Vista

2,8 GHz DualCore

FloppyEnheter utgår kommersiellt från ca Windows Vista [2007]. Istället introduceras USB-minnen i allt större utsträckning [2010].

Windows [64bit]

7

2 GHz DualCore

LapTop — WebTest

 

Siffrorna 2-5 associeras med enhetsbokstäverna — förklaras nedan i GetDriveType.

DriveComboBox1 är det som visas via DELPHI4:s egen enhetskomponent — men den uppdaterar inte: programmet måste startas om för att få senast färskt.

GetVolumeInfoAPI är resultatet av programkod som utnyttjar GetVolumeInformation tillsammans med GetDriveType och en Timer som [1 gång per sekund] garanterar att visningen alltid är färsk med datorns aktuella enheter — om man sätter in något, eller avlägsnar något.

 

 

GetDriveType

 

Nedanstående värden 0-6 returneras från Windows API-funktionen GetDriveType

I:= GetDriveType(PChar(Drive+':\'));

med Drive som Char och typ Drive:= ’C’;

enligt

 

  for Drive:= 'A' to 'Z' do

  case GetDriveType(PChar(Drive+':\')) of

   2..6:

   begin

   ...

   end;

;

 

Följande returvärden gäller (samplat från GetDriveType i Delphi4Hjälpen), se även på webben i MSDN [MicroSoft Developer Network] om GetDriveType Function

http://msdn.microsoft.com/en-us/library/aa364939(v=vs.85).aspx

 

I           Value                                          Meaning                                                              kommentar

0           0                                                 The drive type cannot be determined.               

1           1                                                 The root directory does not exist.                     

2           DRIVE_REMOVABLE            The drive can be removed from the drive.          diskettenheten (A)

3           DRIVE_FIXED                         The disk cannot be removed from the drive.      enhet C, alla SlaveHårddiskar och deras partitioner

4           DRIVE_REMOTE                    The drive is a remote (network) drive.               server

5           DRIVE_CDROM                     The drive is a CD-ROM drive.                           alla CD/DVD/CD_READWrite-enheter

6           DRIVE_RAMDISK                  The drive is a RAM disk.                                   hårdvaruminneSpecial

 

 

Drivenheternas olika typer

 

ENHETSBOKSTÄVER |  retursiffra 0-6 = TYP

TYP 2 särbehandlas [enligt specificerat filsystem], övriga efter samma mall

 

Diskett

A B |  2:

Disketter brukar vanligtvis INTE ha särskilda namn [fast man kan skapa sådana];

— En diskett finns helt säkert inne om GetVolumeInformation visar dels ett serienummer samt ett namn på filsystemet av typen FAT [eller NTFS, bägge för Windows].

— Finns inte filsystemstypen med, är A-enheten nära helt säkert tom.

 

Hårddisk

C |  3:

Alla fasta enheter BRUKAR HA Namn — men behöver inte ha det.

— Ett exempel är C:-enheten i Windows 7 från köptillfället: Enheten visas C: [ ], dvs utan namn

[»Lokal disk» är namnet från fabriken, men det syns inte; först när en namnändring görs visas något].

— Om inget namn finns angivet indikeras »noAccess», vilket vi vet inte är korrekt;

— Vi KAN göra ett undantag för alla TYP3-enheter, men (Jag) väljer här (enväldigt) istället följande:

— GE DEN FASTA ENHETEN ETT NAMN [Döp efter DatorNamnet]. Då visas direkt »AccessLogon»,

 

D |  3...

Samma som ovan — men sekundära eller typ SLAVE i förhållande till MasterC-enheten.

 

CD-DVD

E |  5...

CD-DVD-diskar Associeras i allmänhet med NAMN-etiketter:

— Finns inget Namn, finns sannolikt heller ingen disk inne.

 

Kort-Flash

F |  2...

MINNESKORT — inkluderat FLASHMINNEN [USB-MINNEN] — brukar ha NAMN typ SD-kort [Kamera, typ NIKON], eller Kensington för USB-typen.

— Finns inget namn för denna typ, är enheten med största sannolikhet tom.

 

——————————————————————————————————————————————————————————

DET FINNS YTTERLIGARE TVÅ MÖJLIGA ENHETSTYPER

 

rem

|  4:

— Nätverksenhet.

Behandlas som TYP 3.

— Denna typ ansluter till möjligheter med HögerKlick på Dator-enheten. Se exv. utförligt på webbsidan Server Intellect

http://www.serverintellect.com/support/windowsserver2003/mappingdrive.aspx

— Man anger enhetsbokstav, samt en SERVER [med IP-adress] som kommer att tolkas som en lokal drivenhet på datorn.

 

ram

|  6:

— »RamDisk».

Behandlas som TYP 3.

— Samma som en Hårddisk — men utan mekanik. Alltså [allokerat] hårdvaruminne.

Se beskrivning i @INTERNET Wikipedia RAM disk 2011-05-24,

http://en.wikipedia.org/wiki/RAM_disk

 

 

 

Enheterna och deras status i Windows

 

Enheterna och deras status i Windows

 

I FilUtforskaren i Windows Vista (inte i Windows XP eller tidigare) kan man MARKERA — utan att direkt välja — aktuell lagringsenhet:

 

 

 

 

— Men trycker man ENTER med någon markerad enhet som inte har något lagringsmedium inne för tillfället, visas olika typdialoger som uppmanar en att »sätt in en disk»;

 

 

 

— Samma typ kommer fram i Windows XP (och tidigare) DIREKT då man markerar en enhet eftersom Filutforskaren i detta system också samtidigt utför ett enhetsanrop.

— Det betyder att (före Windows Vista) man inte kan bläddra/låta markeringarna svepa bland datorns olika enheter — utan att bli avbruten av typdialogen ovan; Man tvingas, manuellt, klicka av en dialogruta.

 

Hur undviker man avklickningsrutorna — programmässigt?

 

Webben [Se från SetErrorMode-syndromet] innehåller ett (större) antal propåer från olika personer genom datorhistorien som observerat och påpekat denna olägenhet — speciellt i programmeringssammanhang:

— HUR göra för att INTE uppväcka avklickningsdialoger — bara för att man vill (mjukvaru-) kolla OM enheten HAR något inne?

— Microsoft har aldrig löst det problemet;

 

— TILL EXEMPEL genom att använda en STATUSRAD som hela tiden upplyser användaren om olika tillstånd som råder, men utan att avbryta flödet (genom att ställa fram avklickningsrutor);

— Finns inget inne, kan man bara hoppa över det (med en liten notis: »Finns inget inne»).

— VILL man MEDGE särskild öppning, kan man alltid som programmerare låta användaren köra Ctrl+ENTER.

 

— I programmeringssammanhang vittnar de (många) olika webbinläggen om att »lucköppningssyndromet» är angeläget [Se från SetErrorMode-syndromet];

— Hur man än bär sig åt, tycks man som programmerare INTE kunna smita förbi »lucköppningvakterna». Försöker man t.ex. [DELPHI4 och kompatibla] med

 

if DirectoryExists('A:\') then ...

 

— och ingen diskett finns inne i A-enheten — kommer det fram en dialog som uppmanar att sätta i en diskett. Man tvingas klicka av den manuellt.

— Det finns heller ingen DIREKT »mjuk» [icke avbrytande] funktion i Windows som man kan använda för att testa OM typ A-enheten alls har någon diskett inne. Det var det underliga.

 

— Jo, kanske någon (säkert) inflikar. SetErrorMode.

— Se SetErrorMode-syndromet.

— Använd det gärna — om du vet, exakt, vad du gör.

— VET du det inte — avstå.

INKLUDERAT: påtvinga inte andra användare det ingen vet något om [genom att distribuera program med tvivelaktig kod].

Förstörd CD-RW-enhet

— Jag lyckades [2002] programmera sönder en CD-RW-enhet i min Windows XP-dator med TEST på SetErrorMode: CD-RW-enheten kraschade med ett tydligt hörbart kraschande ljud [som en hög med torra löv eller tomma äggskal mellan händerna som sedan kramas ihop], tillsammans med ett tivoli av ändringar i enhetsdelarna i FilUtforskaren och som du INTE vill veta något mera om. Djupt olustig datorhängning. Sladd ur. Enheten måste bytas ut, datorn startas om.

— Som programmerare, min rekommendation: Använd med all makt inte SetErrorMode om du inte vet EXAKT vad du håller på med.

Se vidare i Citat från Active State Community och Delphi om SetErrorMode.

 

 

Bakgrunden till Enhetsvalen i Windows

 

HUR MAN STÄLLER IN ANDRA SÖKENHETER ÄN ENBART C:\

— Kan DELPHI4Test2011 bara söka på hårddiskens huvudkatalog C:\?

 

 

Planera sökningen — särskild enhet

Det går inte att välja enhet med FindText-boxen [F] framme i DELPHI4Test2011 — ta bort FindText-boxen med Esc först. Ta sedan fram den igen med F — efter det att SetDrive avslutats [med ENTER, D eller Esc].

— Först enheten som ska sökas på [se DriveUnits], sedan FindText.

 

 

HELST SKULLE jag [programansvarig för DELPHI4Test2011] BARA vilja svara »ja» på den frågan. Färdig. Puh.

— Jag rekommenderar DIG att [med all makt] UNDVIKA ALLT ANNAT — i Windows.

 

Nämligen, så:

— Ända ifrån tiden för DISKETTERNA har Windows operativsystem JÄVLATS

— se Enheterna och deras status i Windows

— med att AVBRYTA ANVÄNDAREN MED AVKLICKNINGSDIALOGER om ingen diskett fanns inne i enheten för tillfället: »Sätt in en diskett i enheten A» — bara därför att man PROGRAMVÄGEN vill kolla OM det finns något där.

— Den problemdelen finns också fortfarande kvar i Windows: den löstes aldrig.

 

 

Hur Windows Vista svarar om man försöker välja en [minneskort-] enhet som för tillfället inte har något lagringsmedium inne.

— Jag har sett det nyligen för första gången, ett unikt tillfälle: Vid ett tillfälle [helt nyligen Maj2011] kom INTE avbrottsrutan ovan fram, trots en markerad och vald [ENTER] tom minneskortenhet.

— Windows operativsystem: 99% på visst sätt, 1% annat. Okänt ursprung.

 

I DELPHI4:

— Utan ett TryExceptEnd-block genererar också DELPHI själv en avbrottsdialog av formen

 

 

om man kör ENTER på någon av enheterna med tomma rakparenteser [typ DVD-CD-enheter som det inte finns någon skiva i]. Något annat avbrott för dessa fall har [här i min Windows Vista-dator] inte observerats. Med ett TryExceptEnd-block [som i statusraden i DELPHI4Test2011 talar om att enheten är tom] elimineras det avbrottet.

— Däremot genererar Windows [Vista] själv via markeringar från FilUtforskaren [som ovan, Exception ...] särskilda dialogavbrottsrutor för fallen med tomma minneskortsenheter.

 

Windows själv visar

 

 

om man trycker ENTER på markerad tom kortläsningsenhet;

— Är enheten CD-DVD, öppnas luckan till drivenheten, diskfacket matas ut och meddelande ges om att sätta in en disk.

— Det är snudd på ännu värre.

 

 

OM du/jag vill söka på andra enheter än hårddiskens enhet [C:\], och vi vill vara helt säker på att sökprogrammet INTE avbryts på grund av att det inte finns någon lagringsyta inne för tillfället [diskett, CD, DVD eller minneskort], måste vi också — utan extra KOD — tillförsäkra oss om att den enhet som sökningen ska göras på HAR ett lagringsmedium instoppat. Annars bryts programflödet i sökningen med typen [»Sätt in en diskett i enhet A»];

 

Inget mer händer förrän man klickar av den rutan manuellt [eller som i Vista, två konsekutiva, exakt likadana].

— DET är jobbigt.

— I DELPHI4Test2011 har problemet lösts genom en kombination av Windows API-funktionerna GetDriveType och GetVolumeInformation. Se utförligt från Enhetsåtkomsten för sökverktyget .

 

Men det är också OREALISTISKT:

 

Med den numera enorma mängd data i form av foton, videoklipp och annat som frodas på de olika lagringsenheterna, MÅSTE NÅGOT motsvarande generellt sökningsverktyg OCKSÅ finnas — så att man i varje fall ELEMENTÄRT kan söka på katalognamn, filnamn och även (i förekommande fall genom särskilda önskemål) text i dokument på datorns samtliga enheter.

 

Genom vidare test och analys har DELPHI4Test2011 utformats med den helhetslösning som beskrivs i Enhetsåtkomsten för sökverktyget.

 

— Förutsatt att Du/jag är OBSERVANT PÅ den senast valda enheten

— den står alltid nederst vänster i den lilla ljusgröna panelrutan [Se DriveUnits]

— så att vi är säker på att det är samma som vi TÄNKER börja söka på med referens till senast inlästa enhetskatalog

 

DELPHI4Test2011 startar alltid med enheten C:\ vald medan UnitDirList.txt kanske innehåller den senast inlästa katalogen från enhet D ... :

— Kolla (och dubbelkolla) alltid FÖRST.

 

— ska det inte vara några problem i DELPHI4Test2011 heller.

— Notera också att endast FULLtextSÖKNING kräver en separat kataloginläsning [för exakt uppdaterad katalogstruktur] i DELPHI4Test2011.

   Se vidare från FullTextSökning.

 

 

 

GetVolumeInformation

forts.frn. SetErrorMode

GetVolumeInformation

————————————————————————————————————

Webbreferenser (Maj2011) finns bl.a. på:

 

http://65.39.72.142/Term.aspx?t=652019

; Klick på »view site» leder till

http://www.delphicorner.f9.co.uk/articles/wapi2.htm

 

http://www.delphipages.com/forum/showthread.php?t=9035

 

 

 

Det finns en annan väg i Windows API — garanterat helt ofarlig:

— GetVolumeInformation kan ta fram (här främst) tre avgörande data på aktuell enhet — utan att uppväcka några dialoger som måste klickas av om enheten för tillfället saknar lagringsmedium:

 

namn, serienummer, filsystem.

(GetVolumeInformation returnerar False om inte alla finns med).

 

— GetVolumeInformation-kommandot ger i sig inget avbrott — i varje fall inte på de datorer jag har testat;

— Testade Windows 95 (New Tech) och Windows XP (Packard Bell) med diskettenheten oladdad (ingen diskett inne):

— Det enda som märks är att de äldre diskettenheterna ger smärre ljud ifrån sig (som en liten skrivare) då Infokollen anropar enheten.

— Dock sker inget programavbrott: inga klickaAvDialoger kommer upp — vilket sker om man försöker med koden i exemplet längre upp.

 

Tillsammans med Windows API-kommandot GetDriveType kan man — utan avbrott — få en nära 100%-igt säker förhandsbild av huruvida enheten är tillgänglig eller inte.

— Så här är det upplagt i DELPHI4Test2011:

Programexempel

1.

GetDriveType samlar info om vilka drivenheter/bokstavsbeteckningar som finns installerade på datorn, samt deras status [0-6: hårddisk, CD-DVD, Diskett, Minneskort, osv.]

Resultatet av den operationen visas i DELPHI4Test2011 nederst i programfönstret som [exempel från min Vistadator]

 

 

Informationen lagras i en TString, Drives [bara enhetsbokstäverna] och en DriveX [samma form som i displayraden ovan];

2.

Därefter utförs kontroll och genomgång — för varje enhetsbokstav [uDrve] —

 

  Procedure GetuNSF(uDrve: string); {Get UnitNameSerialnumberFilesystem}

  var

    A                   : LongBool;      {Check}

    uName          : PChar;           {Enhetens Namn}

    uSeri             : PDWORD;      {NotUsed · Enhetens SerieNummer, PointerDWord}

    uAdrLenth     : DWord;           {NotUsed · MaxFilNamnLängdsInfo}

    uAdrFlags     : DWord;           {NotUsed · FilSystemFlaggor}

    uFiSy             : PChar;           {Enhetens FilSystem}

  begin

         GetMem(uName, MAX_PATH);

         GetMem(uSeri,     MAX_PATH);

         GetMem(uFiSy,    MAX_PATH);

    try

         uDrve:= uDrve + ':\';

         A:= GetVolumeInformation(

         PChar(uDrve),

         uName,

         MAX_PATH,

         uSeri,

         uAdrLenth,

         uAdrFlags,

         uFiSy,

         MAX_PATH);

 

         sName:= StrPas(uName);

         sFiSy:= StrPas(uFiSy);

 

         if A=False then sName:='';

    finally

         FreeMem(uName,             MAX_PATH);

         FreeMem(uSeri,                MAX_PATH);

         FreeMem(uFiSy,               MAX_PATH);

    end;

  end;{endGetVolInfo}

———————————————————————————————————————————

MAX_PATH, max 260 tecken från Win32, se

http://support.microsoft.com/kb/245809

 

tillsammans med villkor för varje enhet på datorn enligt

 

    for I:= 1 to Length(Drives) do

    begin

     S:= Drives[I];

     GetuNSF(S);

     U:= sFiSy;

     if Drives[I] in ['A','B'] then

     begin

      if sName <> '' then

      {<Add[uName]>:}

      begin

        DriveStrings[I-1]:= Drives[I]+': ['+sName+']';

      end

      else

      if

      (Pos('FAT',              U)>0)   or

      (Pos('NTFS',           U)>0)   or

      (Pos('HPFS',           U)>0)   or

      (Pos('AFS',              U)>0)   or

      (Pos('HFS',              U)>0)   or

      (Pos('MFS',             U)>0)   or

      (Pos('ext',               U)>0) then

      {<Add[]>:}

      begin

        DriveStrings[I-1]:= Drives[I]+': []';

      end

      {<else add nothing>.}

      else

      begin

        DriveStrings[I-1]:= Drives[I]+':';

        DrivesAccess[I]:= '0';

      end;

     end {endIfFloppys [A|B]}

     else

     begin

      case DriveX[3*I-1] of

        '2':

        begin

          if (sName='')

          then

          begin

            DriveStrings[I-1]:= Drives[I]+':';

            DrivesAccess[I]:= '0';

          end

          else

          begin

          DriveStrings[I-1]:= Drives[I]+': ['+sName+']';

          end;

        end;

        '3'..'6':

        begin

          if (sName='')

          then

          begin

            DriveStrings[I-1]:= Drives[I]+': []';

            DrivesAccess[I]:= '0';

          end

          else

          begin

            DriveStrings[I-1]:= Drives[I]+': ['+sName+']';

          end;

        end;{end3-6}

      end;{endCase}

     end;{endElse}

    end;{endFor}

    DriveStrings.Sorted:= True;

 

DriveStrings är en TStringList motsvarande listningen i DELPHI4:s DriveComboBox [som tyvärr inte uppdaterar, därav den extra koden ovan]: I DriveStrings skrivs motsvarande information in och som sedan uppdateras (en gång i sekunden, som ovan) OM någon ändring sker på datorns enheter [separat TimerBlock med villkor Senast-Nuvarande], och förutsatt att SetDrive-läget gäller.

— DrivesAccess är en specialTextSträng [»AccessLogon»] som initieras med alla ’1’:

— Enheten X betraktas som KLAR [logiskt ’1’] att textsöka på OM den innehåller NamnSerienummerFilsystem från GetVolumeInformation, annars inte tillgänglig [tilldelas logiskt ’0’].

— Undantaget är diskettenheten [A, B]: De flesta disketter saknar NamnEtikett; Man kan [då] tillåta att enheten klassificeras KLAR — men bara under förutsättning att FilSystemInfo ger relevant uppgift;

 

Listan ovan [FAT, NTFS, ...] ger de kända filsystemen [i Windows, Mac och Linux].

Alla övriga enhetstyper kan betraktas som KLARA om EnhetsNamn finns:

— Alla fasta datorenheter, hårddisken [med inre partitioner, SlaveHårddiskar] brukar ha något EnhetsNamn från datorköpet; Är så inte fallet, skapa ett namn så visas det i DELPHI4Test2011 inom rakparentesen.

— CD-DVD-enheternas skivindivider brukar vanligtvis AUTOMATISKT tilldelas någon specifik NamnEtikett från bränningen; Finns ingen sådan etikett är enheten med största sannolikhet INTE klar för textsökning;

— Alla minneskort [typ kameraminnen] och USB-minnen brukar också ha redan givna namn från fabriceringen (som man kan ändra); Finns inget namn, är enheten med största sannolikhet tom.

Access Granted

AccessGranted

 

Alla Enheter som bibehåller sin logiska 1:a i DrivesAccess visar »AccessLogon» i formen av två (Björk) Löv,

 

 

De läggs intill resp. enhetsbeteckning i displayblocket och indikerar [men utan att garantera] att dataenheten är KLAR för textsökning i DELPHI4Test2011.

— Vilket betyder: Man kan välja den markerade enheten med ENTER [helt säkert] utan att riskera att utsättas för WindowsSystemets avklickningsdialoger med »det finns ingen disk inne, sätt in ...».

 

Två jämförande Enhetslistare

Två jämförande EnhetsListare i DELPHI4Test2011

 

Exempel från min VistaDator · 25Maj2011.

 

DriveComboBox1 [nedan, komponenten sådan den ser ut i DELPHI4] är DELPHI4:s egen [statiska] EnhetsKomponent. Den var tänkt från början att vara det enda som skulle behövas. Det visade sig sedan att den blir krånglig att få att fungera om Du/jag sätter in eller tar ut t.ex. ett USB/FlashMinne. DELPHI4-komponenten är helt död för den typen.

 

Programexempel på webben [DelphiKod] som visar hur man kan få DriveComboBox-komponenten uppdaterad FRÅN ÄNDRINGAR I WINDOWS EXPLORER verkar inte finnas.

— Från programstart känner DelphiKomponenten av vilka enheter som finns på datorn. Men ändras någon av dessa under programkörningen, verkar det inte finnas någon mekanism i DELPHI4 som känner av ändringen.

— Komponenten reagerar inte — om ingen speciell kod kommer till.

För att få visuell bekräftelse, måste Delphiprogrammet avslutas och startas igen.

— Inte ens MED en separat Timer [som anropar DelphiDrive-komponenten periodiskt] går det [här veterligt] att få fram en ändring.

— Ämnet är å andra sidan svårformulerat i direkt fråga — det kan finnas webbkällor dolda för mig som har svaret.

[»reflecting explorer changes in drivecombobox, delphi»]... Finns inte [Maj2011].

 

— Komponenten TDriveComboBox i DELPHI4 innehåller (i vilket fall de mera) föråldrade enhetsikoner typ nedan som inte används i DELPHI4Test2011;

 

 

TDriveComboBox från DELPHI4 [2000] — Den används gömd  i DELPHI4Test2011 och skrivs av med TextOut på Image1-bildytan.

 

DELPHI4Test2011-alternativet med DriveStrings (höger ovan) visar hur samma grundinfo [dynamiska] fås via Windows API-kommandona GetDriveType och GetVolumeInformation tillsammans med en mera direkt uppdaterande funktion [via separat TimerBlock] — med »AccessLogo».

 

Den automatiska 1-sekundersUppdateringen i DELPHI4Test2011 kan stängas av/återinsättas med Ctrl+Shift+T. Är Timerfunktionen avstängd fås DriveUpdate-funktionen manuellt genom att trycka omväxlande på tangent D [varannanPÅ (orangePil) ger uppdatering].

   Se även mera utförligt från DriveUnits.

 

 

 

DelphiHjälpen på GetVolumeInformation

DelphiHjälpen på GetVolumeInformation

Remarks

 

If you are attempting to obtain information about a floppy drive that does not have a floppy disk or a CD-ROM drive that does not have a compact disc, the system displays a message box asking the user to insert a floppy disk or a compact disc, respectively. To prevent the system from displaying this message box, call the SetErrorMode function with SEM_FAILCRITICALERRORS.

”.

 

Det märkliga är att GetVolumeInformation inte alls resulterar i några sådana, påstådda, beteenden.

— Särskilt kollat (24Maj2011) i Windows 95 och Windows XP med tom enhet (ingen diskett inmatad i diskettenheten):

— GetVolumeInformation läser obehindrat, utan avbrott, av enheten (A:\). No Problemo.

Däremot ges avbrott om man försöker på annat sätt, typ

 

if DirectoryExists('A:\') then ...

 

— En dialogruta kommer upp som uppmanar att sätta in en diskett om ingen finns inne.

— Så: Vad än DelphiHjälp-författaren hade i åtanke med ovanstående, är det tydligen ingenting som gäller för GetVolumeInformation-kommandot — åtminstone inte på de testdatorer som (ännu idag Maj2011) står på mitt bord.

 

 

 

SetErrorMode-syndromet

 

SetErrorMode-syndromet

 

 

 

 

Efter sökning på Webben 23Maj2011 »GetVolumeInformation, delphi code»,

med uppslag från [komplicerad webbsida: skrolla neråt, flera artiklar finns på temat, välj »view site >>»]

http://65.39.72.142/Term.aspx?t=652019

http://www.delphicorner.f9.co.uk/articles/wapi2.htm

Copyright © 1995, 1996, 1997 Brendan V. Delumpa All Rights Reserved.

Även — huvudet på spiken, ”How can i know if there is disk in drive?” —

http://www.delphipages.com/forum/showthread.php?t=9035

 

Se även DelphiHjälpen på GetVolumeInformation:

 

 

 

Angående SetErrorMode:

— Gör det inte — utförlig beskrivning nedan:

 

 

 

— Don’t.

— Don’t do it — unless you KNOW EXACTLY WHAT YOU ARE DOING.

— I managed to CRASH [with a corresponding real crashing sound when it gave up too] an entire CD-R-device in testing the SetErrorMode-flags — with a corresponding »bad hang» of my Windows XP-computer. I know [to be read: KNOW] what a worst case means.

— Try other ways (with all might — unless you KNOW the System).

— See quotes below from a person who seems to understand the issue [Quote from Nov 2004 ActiveState Community].

— SHORT: SetErrorMode is intended for debugging purposes — by (already experienced, skilled) developers who understand, or are trying to understand, the different THREADS inside different processes of a (Windows) operating system. It is not intended to be overridden in any general sense. DefaultMode is SetErrorMode(0) — nothing else, se quotes below.

 

 

Delphi om SetErrorMode

Delphihjälpen upplyser även beträffande SetErrorMode:

Return Values

The return value is the previous state of the error-mode bit flags.

”, samt

Remarks

A child process inherits the error mode of its parent process.

”.

— Som betyder: Det är omöjligt att veta på förhand vad, exakt, som kommer in i X via typ

X:= SetErrorMode(<>);

— Det beror på hur operativsystemet för tillfället arbetar, varifrån dess NU arbetande s.k. (process-)TRÅD kommer, och vart den pekar (är på väg).

— Kort sagt: det blir OMÖJLIGT att veta något SÄKERT med ovanstående typ X-lagring:

— Lägger man tillbaka samma X-innehåll EFTER ETT MELLANSTICK (för »koll av drivenheter») är operativsystemet i princip utlämnat åt sitt eget äventyr.

— Det KAN gå. Men det KAN också gå käpprätt åt skogen.

— Och då vet INGEN.

Se Citat ActiveState Community.

— Jag vill ändå säga det: VET DU EXAKT vad det är du håller på med som programmerare, att inga som helst tvivel föreligger, kan du givetvis bortse helt ifrån dessa varningsflaggor.

 

 

 

— SetErrorMode rekommenderas (bl.a. i DELPHI4-hjälpen) för att kolla typ Floppy

— precis vad jag gjorde på WindowsXP-datorn [PackardBell-version 2002] och som resulterade i en förstörd CD-enhet. Jag vägrar in till ATOMEN utsätta andra personer för ens misstanken om något liknande.

— Jamen om du istället hade ...

— Diskussionen är avslutad. Det ska inte få förekomma något sådant: det ska inte gå att förstöra någon enhet på datorn, inte alls överhuvudtaget, eller skapa något annat »feldike», genom att laborera med datorns olika funktioner. Ett operativsystem får inte innehålla någon sådan möjlighet. Aldrig.

 

 

Se även djupbeskrivning i »Is Disk in Drive?»,

”EMode := SetErrorMode(SEM_FAILCRITICALERRORS) ;”

http://delphi.about.com/od/beginners/a/floppy.htm

 

Se även (samma som min egen tidiga observation) — hur man ÅTERSTÄLLER — beskrivs inte i DelphiHjälpen:

”Incomplete Description of SetErrorMode() Function”

http://kbalertz.com/100305/Incomplete-Description-Function.aspx

Bidraget ovan påstår att man ska »skicka med 0» för att återställa — men utan vidare certifiering.

 

NOLLAN beskrivs (mera certifierat) också i Windows API på webben för SetErrorMode [MSDN, MicroSoft Developer Network],

”SetErrorMode Function”

http://msdn.microsoft.com/en-us/library/ms680621(v=vs.85).aspx

 

Här finns ytterligare en som rekommenderar »FEL» SETERRORDEFAULT:

”TDriveComboBox and IO error 21”

”OldErrMode := SetErrorMode(SEM_FAILCRITICALERRORS);”

http://borland.newsgroups.archived.at/public.delphi.vcl.components.using.win32/200609/0609233124.html

 

(Jises).

 

Jämför:

OldErrorTHREADflagValue. Inte »OldErrorMode».

 

— Flera webbare uppvisar samma FELFASON:

 

1.

 

Sampla upp »det gamla värdet» från WindowsSystem enligt nedan — ErrorMode är en PROCESSBASERAD tillståndsform [Se Delphi om SetErrorMode], inte en per specifik funktionsoperand: du vet ALDRIG [om du inte känner operativsystemet i detalj] hur föregående feltyp kopplar till helheten; DVS., och i princip: Bjud in ÄVENTYRET på datormiddag, för vidare:

 

OldErrMode := SetErrorMode(SEM_FAILCRITICALERRORS);

 

— FELET är att »OldErrMode» BLIR LIKA MED föregående »SEM_FAILCRITICALERRORS»,

— Du måste veta SÄKERT att Windows får tillbaka sitt normala KraschHanteringsTillstånd.

— Men hur kan du veta det genom att sätta dit FÖREGÅENDE? Det stämmer inte — därför att Windows ErrorMode är en PROCESSRELATERAD, inte en specifikt funktionsrelaterad, tillståndsform: den kopplar i SYSTEM [beror av föregående, som i sin tur beror av ...]. Se Delphi om SetErrorMode.

— Det betyder att du inte kan veta säkert att INTE en SÅDAN sättning införs i efterhand som innebär att Windows INTE visar/upplyser om VISSA VITALA fel;

DelphiHjälpen skriver för den aktuella typen:

  "

If this flag is set, the operating system does not display the critical-error-handler message box when such an error occurs. Instead, the operating system sends the error to the calling process.

".

— Eller som bidragsgivaren ovan skriver i sin DelphiKod:

 

2.

 

"

..finally

      SetErrorMode(OldErrMode);

";

 

3.

 

— CRASH.

— Men det KAN gå på under LÅNG tid innan något fel visar sig — eller kanske aldrig. Allt beror på omständigheterna.

 

Korrekt återställning

— se Microsofts Windows API på SetErrorMode

http://msdn.microsoft.com/en-us/library/ms680621(v=vs.85).aspx

— är

»SetErrorMode(0);».

— Det återinsätter/visar Windows samtliga feldialoger.

 

— Men, min rekommendation, för den som NÖDVÄNDIGTVIS ANVÄNDER FUNKTIONEN I PROGRAMMERANDE TEST OCH för att vara på den säkra sidan EFTER en sådan manipulation, eftersom ErrorMode är processrelaterat [Se Delphi om SetErrorMode samt Citat från Active State Community]:

 

Starta om datorn. Annars är risken att »hakningar» finns kvar som ev. i värsta fall allvarligt kan skada datorn eller någon av dess enheter

— som det hände i mitt testande fall med en CD-RW-enhet [Windows XP 2002].

 

— På engelska: Better safe than sorry.

 

 

 

Citat ActiveState Community

 

Kloka påpekanden — som en del (de flesta) verkar strunta i

 

En person som tycks RÖRA vid sakens kärna finns på webbstället

http://code.activestate.com/lists/perl-win32-users/25263/

 

  "

...the program would not longer receive automatic

alignment fault fixups and will start crashing.

  ";

  "

Note that the error mode is a process-wide setting, not a per-thread

setting. This means that manipulating the process error mode is not

something you should do lightly, since it may have unintended consequences

for other threads (which you might not have control over).

  ";

  "

Of course, if you disable the crash dialog, then you also miss out on the

opportunity to retrieve crash reports collected by Windows Error Reporting

so you can see where your program is crashing in the real world.

  ";

Exactly my point.

  "

Because the error mode is set for the entire process, you must ensure that

multi-threaded applications do not set different error-mode flags. Doing so

can lead to inconsistent error handling.

  ";

Quote from Nov 2004 ActiveState Community.

 

 

Textfilerna i DELPHI4Test2011-katalogen

 

 

Textfilerna i DELPHI4Test2011-katalogen

 

De olika TXT-filerna i DELPHI4Test2011-katalogen

 

 

 

Hur textfilerna skapas

 

DATA.txt

Skapas villkorslöst vid första uppstart FormCreate enligt

 

rad1               T.Add(IntToStr(GraphColor));                               kurvfärgen (svart, kan sedan ändras)

rad2               T.Add(IntToStr(CrossColor));                               xy-färgen (mörkgrå, kan sedan ändras)

rad3               T.Add(IntToStr(GridColor));                                   rutnätsfärgen (ljusgrå, kan sedan ändras)

rad4               T.Add('Webber');                                                        förberedande för valfri WebbHjälpLäsare (kan sedan ändras)

                        T.SaveToFile('DATA.txt');

 

uRotDir.txt

Skapas villkorslöst vid första CountNumberOfRootDirectories.

 

LastText.txt

Skapas villkorslöst vid första FormClose enligt

 

 S:= ExtractFilePath(Application.ExeName);

 T:= 'E[1]FindText|*';

  if LastText <> '' then

  T:= LastText;

  LTL.Strings[0]:= T;

  LTL.SaveToFile(S+'LastText.txt');

 

Standard.txt, LastSearch.txt

Skapas villkorslöst vid första FormClose enligt

 

  if TS2.Count > 0 then

  TS2.SaveToFile(S+'LastSearch.txt');

  ListBox2.Items.SaveToFile(S+'Standard.txt');

 

LastSearch används [tillsammans med en inre TStringlist TS2] för att synkronisera senast/föregående UnitDirList-inläsning. Det betyder att LastSearch.txt och UnitDirList.txt kan innehålla samma data [Hårddiskens hela katalogbild, runt ca 300 KB i Windows Vista med min Vista-dator som exempel].

 

UnitDirList.txt

Skapas villkorslöst vid första CountAllDirectories enligt

 

       S:= ExtractFilePath(Application.ExeName)+'UnitDirList.txt';

       if not FileExists(S) then

       try

         AssignFile(TF,S);

         ReWrite(TF);

       finally

         CloseFile(TF);

       end;

       try

        AssignFile(TF,S);

        Reset(TF);

       finally

        CloseFile(TF);

       end;

       UnitDirList.SaveToFile(S);

 

 

 

Webbexempel på ofullbordade helhetslösningar

 

FindWindowEx

 

Varken Delphi(4) eller något annat fristående icke htm-baserat program kan öppna ett aktuellt htm-dokument (webbsida) och samtidigt hoppa/skrolla htm-dokumentet till den inre dokumentadressen. (Tyvärr).

— Webben har eftersökts på sådana lösningar, men inget har (ännu Maj2011) hittats.

— Dokumentet som sådant kan dock öppnas från DELPHI(4) — vilket dessvärre blir en meningslös handling om likväl inte den inre länken kan nås (Som att öppna AB för att läsa EX).

 

TESTFALLET NEDAN innehåller viss prövning på påstådd Delphikod som skulle kunna avläsa innehållet på en webbsidas inre textboxar. Testet (på min Vistadator) visar att koden i varje fall inte ger resultat i Windows Vista.

 

Med uppslag från

 

[casterqa] 2008

http://www.pinoyunderground.com/showthread.php?t=185731

http://www.pinoyunderground.com/showthread.php?t=181025&goto=nextnewest

:

Terminologi [ReBar CoolBar ComboBox32 ...]

http://msdn.microsoft.com/en-us/library/ms997549.aspx

 

 

Testfallen

 

Timerfunktionen (bakgrundsprogram) samplar upp programfönstret [här Internet Explorer] med fokus och kollar dess fönsterinnehåll genom Windows API-funktioner:

Timerfunktionen:

{var wP: PChar;}

     wP:=StrAlloc(50+1);

     try

      GetClassName(GetForegroundWindow,wP,50);

      Label1.Caption:= StrPas(wP);

      if Label1.Caption = 'IEFrame' then

      TestBrowser(GetForegroundWindow);

      if

      Label1.Color=C then

      Label1.Color:=RGB(240,220,200) else

      Label1.Color:=C;

     finally

      StrDispose(wP);

     end;

;

Testproceduren:

Procedure TestBrowser(wChild: HWND);

var

  List             : TStringList;

  I,A             : Integer;

  S               : string;

begin

   if wChild = 0 then Form1.Timer5.Enabled:= False;

      List:= TStringList.Create;

      try

       for I:= 1 to 3 do

       begin

          case I of

          1: S:= 'WorkerW';

          2: S:= 'ReBarWindow32';

          3: S:= 'ComboBoxEx32';

          end;{endCase}

          wChild:= FindWindowEx(wChild,0,PChar(S),nil);

          if wChild = 0 {NotFound:} then begin

          Form1.Timer5.Enabled:= False;

          Form1.Label1.Caption:= 'NotFound: ' + IntToStr(I);

          Break;

          end;

       end;{endForI1to3}

      finally

         List.Free;

      end;

end;{endTestBrowser}

 

Resultat:

 

 

Proceduren kommer inte förbi Nr3. Finns inget »ChildWindow» till »ComboBoxEx32».

 

Källverken på webben som använder ovanstående »WorkerW, ReBarWindow32, ComboBoxEx32» ligger alla runt epoken 2008 — en utpräglad Windows XP-maskinpark. Ovanstående är testat på Windows Vista. Jag har inte testat på Windows XP — och tänker inte göra det heller — en helhetslösning får inte innehålla missar, som ovan, för något enda av de olika datorfallen. Dessutom tillkommer paketet med andra webbläsare än Internet Explorer, och de har andra komponentnamn.

 

 

 

Andra komponenter i t.ex. Firefox,

http://www.opensc.ws/source-code-help/6983-using-c-hwnd-get-active-browser-window.html

 

 

 

Den lösningsformen är (här) utesluten.

 

Det finns i varje fall en webbkälla som rapporterar samma resultat:

http://lists.elists.org/pipermail/delphi/2008-July/030235.html

— Det finns också alternativa förslag på de olika instanserna typ

»WorkerA», »Worker», »ComboBox», »WC_COMBOEX», och så vidare [i all oändlighet ...]. Men ingen av dessa medför [min Windows Vistadator] någon förändring: processen kommer inte förbi nr3. Därmed heller ingen tillgänglig lista på webbflikarnas öppna webbfönster.

— Det finns dock (åtskilliga) som verkar mena att det fungerar [på aktuella Windows XP-maskiner, runt 2008]; webbsök på

»"hWndIEChild, 0, 'ComboBoxEx32', nil"».

— Tyvärr verkar ämnet så diversifierat att någon enhetlig överblick inte går att formulera.

— Ännu värre blir det med andra webbläsare än InternetExplorer. Se exv. omnämnandet i webbkällan

http://www.opensc.ws/source-code-help/6983-using-c-hwnd-get-active-browser-window.html

”childwindows are MozillaDropShadowWindowClass, MozillaWindowClass”.

— FireFox, som exempel, har helt andra komponentnamn.

— Och (förmodligen) på samma sätt med övriga webbläsare.

— Det verkar inte heller finnas någon ALLMÄN webbeskrivning som förklarar de olika webbläsarna komponentnamn och hur man når dessa. Ämnet verkar ytterst [extremt] DIVERGENT: svåråtkomligt, svårnavigerat.

— Möjligen menar en del att ovanstående PROGRAMTYP som sådan inte ALLS är tillämplig. Det verkar dock inte finnas någon direkt KLAR beskrivning i ämnet, endast antydningar [en del tycks mena att helhetslösningen skulle bestå i en programmering på Windows interna RegistryKey-arkiv (DDE).

 

Varför inte passa på att utforma ett nytt operativsystem medan man ändå håller på?

Som sagt var: (extremt) diversifierat].

 

— Uppgiften här skulle BARA vara att få SAMTLIGA webbläsare att koppla/visa en given INRE LÄNK

 

 

genom att programmatiskt kunna nå URL-fönstrets inmatningsbox, samt aktivera motsvarande ENTER. Webben innehåller här veterligt ingen helhetslösning för det, samtliga webbläsare.

 

 

— ShellExecute i Windows API klarar galant att öppna en viss webbsida via valfri webbläsare — men inte att skrolla fram till en medskickad INRE (#) länk (»...filnamn.htm#LÄNK») på den webbsidan.

— Det är problemet. Kan man inte nå detaljer INUTI textmassan, är funktionen i princip värdelös — detaljerade beskrivningar kan inte ges UTOM GENOM YTTERST OMSTÄNDLIGA UPPDELNINGAR SOM GARANTERAT SÖNDERSTYCKAR VARJE FÖRSÖK.

— LÄNKNING (friktionsfri ömsesidig kommunikation) verkar f.ö. vara programindustrins (hela mänsklighetens) i särklass mest exceptionellt stora problem: Detaljer.

— Tittar vi (2011) på TYP nyhetsWebbSidor (AB, EX, ...) ser vi att (här veterligt) PRAKTISKT TAGET INGEN använder sig av INRE (#) länkar: Alla länkar verkar koppla till separata htm-block — aldrig med referens till en INRE (#) länk i DET blocket.

 

— Folk verkar helt okunniga om den enorma potentialen i ämnet: detaljerade beskrivningar.

 

— Jämför Konsekvensen: inte i någon enda artikel finns en ÅTERKOPPLANDE REFERENS, typ »se början av artikeln från Start». Textflödet är STRÄNGT ENKELRIKTAT.

— Dubbelriktningar verkar inte existera. Inte alls överhuvudtaget.

 

 

 

 

Utvecklingen av DELPHI4Test2011

 

 

Utvecklingen av DELPHI4Test2011

 

Utvecklingen av DELPHI4Test2011

 

Upptäckten [2007] att Windows Vista demolerar vissa funktioner i DELPHI4Test-originalet i Windows XP, ledde tillsammans med en vidare genomgång — som visade problemens lösning — fram till DELPHI4Test2011;

— Windows Vista (och senare) vandaliserar och/eller hindrar vissa Delphirutiner — lösningarna här inkluderade i Delphi4Test2011.

 

För att förkorta den här manualen för DELPHI4Test2011 hoppas huvuddelen i den beskrivningen över (ämnet blir extensivt och leder in på andra områden som explicit inte berör manualen). Här ges endast en förkortad översikt i sammandrag.

 

I UNIVERSUMS HISTORIA omnämns (versalkänsligt) DELPHI (Maj2011) på följande 4 ställen:

 

 

1. MatElementarYtorna.htm#BorlandsPascal — allmänt om DELPHI

2. MatematikenEkvation2.htm#GRAFLÄRA — ”DELPHI 4 kompilerar inte i Windows Vista”

3. REGISTER.htm#AllmäntOmWebbläsarnaApr2010 — beräkningsreferens

4. UnivHistTidenJorden.htm#J_kroppens_allmänna_temperaturfunktion — beräkningsreferens

samt i

5. (Passagen) MicrosoftExempel.htm — exempellistan med Microsoft-felen

 

PROBLEMEN MED WINDOWS VISTA och »administratörsbehörigheten» hindrade mig under lång tid från att alls komma åt DELPHI-kompileringen (punkt 2 ovan): ”Hemligheten” bestod i att högerklicka på typ skrivbordsikonen, välja Kör som administratör, och sedan Tillåt ... . Det visade sig (då) att Windows Vista presenterade TVÅ olika Delphi-versioner (!): den ena som såg ut som vanliga DELPHI och som inte kunde kompileras, och den andra (»AdminVersionen») som gjorde det. Bara med viss motvilja (och efter en längre tids stretande) accepterades den ordningen. I efterhand har det visat sig att »AdminVersionen» helt kan fås att övergå i en normal användning där man inte behöver genomföra »AdminRutinen» — även med UAC (se nedan) aktiverat. Men Windows (Vista) är inte enkelt att beskriva på den punkten annat än att det handlar om olika (gynnsamma) inställningar i samband med att aktivera och inaktivera »UAC»;

 

START, Kontrollpanelen, Användarkonton, Aktivera eller inaktivera Kontroll av användarkonto (UAC)

 

Windows (Vista) verkar RIK på uppslag med beskrivningar av den typen — vilket också leder till att den här beskrivningen TENDERAR att bli ypperligt EXTENSIV: det kan aldrig vara den vanliga användarens avsikt eller uppgift att presentera någon utförlig MANUAL för WINDOWS VISTA OPERATIVSYSTEM till andra användare — men vi TVINGAS mer eller mindre till det på grund av systemets olika beteenden.

 

Speciellt Bildfelet och Katalogfelet omnämnt i punkt 5 ovan satte definitiva hinder i vägen.

   Först efter en ingående djupdykning i DELPHI-koden (Apr2011), kunde dessa problem lösas;

   Bildfelet:

 

Ovan, originalet från Windows 95, Windows Vista

Nedan, demolerat i Windows Vista och Windows 7

 

Windows Vista (och Windows 7) har SÅ märkliga sätt och TRIX för sig med DELPHI-kommandot DRAW att det ÄNNU dyker upp djupt olustiga klippningseffekter [som i skrivande stund förhoppningsvis, men inte säkert, är åtgärdade, testerna fortsätter];

— Medan DRAW accepteras på samtliga ställen av Windows 95 och Windows XP, demoleras det på vissa, inte alla, ställen av Windows Vista och Windows 7, samt ytterligare trixigheter som (ännu) är extremt svårformulerade på någon kort beskrivande mening; med ersättning av DELS likvärdiga men mera omständliga COPYRECT och DELS en kombination av de olika sätten ser det ut som att Bildfelet har eliminerats (15Maj2011);

   Katalogfelet [se även här i Kodexempel]:

 

 

Windows Vista och Windows 7 tillåter inte ens att användaren läser av filnamn i vissa kataloger: »File access denied» upplyser en rödkryssmarkerad dialogruta. För att komma runt det avbrottet — som effektivt dödar varje försök att få ihop ett fungerande sökprogram i Windows Vista och Windows 7 — måste speciella EXCEPTION-rutiner testas och utformas som tar hänsyn till Windowsavbrotten (mera utförlig beskrivning i Standard.txt). Först med dessa problem fullständigt lösta kunde nu DELPHI4Test2011 utformas som det är presenterat här. Se vidare från DELPHI4Test2011.

 

 

Användning, Support och Installation — Anvisningar · Manual

 

 

Användning, Support och Installation

 

 

Gå till Manualen på Webben — samma men fristående @INTERNET

http://www.universumshistoria.se/AAALib/DELPHIHelp/HTM/DELPHI4Test2011.htm

 

Användning, Support och Installation

 

Skiva i DVD kan försena programstart. NOTERA FÖR UPPSTART AV DELPHI4Test2011 — och alla andra fristående program som inte installeras via Windows Register: Finns t.ex. en DVD-skiva i en av datorns DVD-enheter, kommer [eventuellt] enheten att starta [men inte spela upp] med fördröjd uppstart av DELPHI4Test2011 — vilket kan ta längre tid än nödvändigt innan programmet kommer fram på skärmen. Situationen uppkommer bara vid första tillfället.

 

Reservation för programfel — Access violation

Alla datorprogram utvecklas för att INTE göra intrång på andra programs domäner — olika minnesadresser som överskrids på grund av felaktigt eller bristfälligt skriven programkod. Dagens operativsystem är utformade för att hålla koll på att ett visst program håller sig till sin del. OM ett övertramp uppkommer, visas i allmänhet en rödkryssmarkerad dialogruta av typen »Access violation at adress ...» med en OK-knapp. Felet än inte direkt allvarligt — det är bara att klicka av via OK-knappen — men avbrottet visar samtidigt att programmet inte fungerar korrekt.

   Det har under utvecklingsarbetet med DELPHI4Test2011 förekommit åtskilliga AccessViolationavbrott och som upplyst om olika fel i programkoden. Alla dessa har dock in till skrivande stund åtgärdats — DELPHI4Test2011 är här [Jul2011] veterligt helt fritt från programkod som kan åstadkomma AccessViolation-avbrott [‡].

   Jag kan dock inte garantera att brister i programkoden INTE existerar — det kan finnas vissa (olyckliga) kombinationer av programkod som »ligger och lurar» under lång tid och som, plötsligt, hoppar fram vid något speciellt (olyckligt) tillfälle.

 — Du måste vara helt klar över den punkten:

 

·          OM du tycker att DIN dator börjar uppföra sig underligt på allra minsta sätt i samband med användningen av DELPHI4Test2011, eller

·          OM ett Access violation-avbrott skulle visa sig i DELPHI4Test2011 på DIN dator

 

ska programmet avslutas. Använd det inte — radera det från datorn [‡].

 

Felet KAN (emellertid) vara så originellt, att det bara visas EN gång — och sedan aldrig mera. OM ett fel visar sig upprepat, efter omstart av programmet, är det min rekommendation att du helt slutar använda programmet [för min del betyder samma situation arbete med att reda ut och reparera felet [‡]] — se Avinstallation nedan: Programmet innehåller uppenbarligen fel och därmed, frånsett det irriterande felmomentet, en potentiell källa för sämsta fallets »ännu värre». Radera programmet från hårddisken. Använd det inte.

Användning

DELPHI4Test2011 får — som allt övrigt under domänen UNIVERSUMS HISTORIA — användas endast för att främja ett fritt, öppet och otvunget kunskapsutbyte mellan alla människor: utan hänsyn till ålder, kön, ras eller ursprung, eller andra faktorer som gör åtskillnad mellan individerna i mänsklighetens familj.

Support

Utöver följande ges ingen särskild support eller annan beskrivning eller information om programmets användning.

 

Grundformen till DELPHI4Test2011 utformades ursprungligen i Windows 95 från DELPHI4 och har sedan dess använts i efterföljande Windowsversioner Windows XP, Windows Vista, Windows 7 (64bitVersion). Med den exceptionella stabilitet som programbasen har uppvisat nu under fjorton år och i ljuset av den avgjort stora nytta som programblocken har uppvisat, vill jag varmt rekommendera bekantskapen med DELPHI4Test2011 — OM du vill ha enkla, grundläggande och effektiva verktyg för enklare bildhantering, grafritning SAMT en verkligt effektiv textsökning.

 

Webben har — min mening — delvis visat sig mindre upphetsande på gratisprogram i just dessa ämnen, datorstödd ELEMENTÄR textsökning och bildhantering. Nu kan du själv kolla det påståendet för din egen del — och jämföra med det allmänna utbudet. Flera exempel följer i den här presentationen — med utförlig beskrivning på hur DELPHI4Test2011 fungerar.

 

Installation

INSTALLATION

Klick på den här LÄNKEN LEDER TILL installation av DELPHI4Test2011

 

Du som redan vet hur man installerar från ZIP-filer kan hoppa över [det mesta] i följande:

 

DELPHI4Test2011 kan installeras och köras var som helst på någon av datorns fasta enheter:

— Den här framställningen förutsätter att DELPHI4Test2011 körs från någon av underkatalogerna på datorns fasta huvudenhet [C:]. Se vidare installationsexempel nedan.

— OM programmet installeras på någon annan enhet än C:\ kommer programmet inte att fungera korrekt.

— Det är en ren säkerhetsåtgärd för att helt undvika olika kopplingsfel mellan olika enheter som används speciellt i textsökning.

— Installation och användning är helt gratis, du riskerar inga avgifter, och får använda programmet så länge du vill och i vilken omfattning du vill:

DELPHI4Test2011 har testats, fungerar och kan köras i [med alla mellanliggande]

Windows 95, Windows XP, Windows Vista, Windows 7 [även 64-bitarsversionen]:

Det krävs inga särskilda registerblock eller installationsrutiner — allt finns redan inbyggt i DELPHI med Windows API-funktioner.

 

Notera särskilt för Windows 95: DELPHI4Test2011 baseras på RGB-standard (TrueColor). Windows 95-monitorer ligger/låg i gränslandet mellan den äldre och den nyare tekniken — flera bildskärmsinställningar är möjliga. Dock är det bara med True Color [32-bitar] som DELPHI4Test2011 kommer att fungera felfritt i Windows 95. Annars ges typiska fel som »Access violation» och helt felaktiga filöppningar i FindText.

— Noteringen här är dock förmodligen helt överflödig:

— Knappast någon använder längre Windows 95. Dessutom är sökverktyget i Windows 95 redan så bra det kan bli: söker redan på allt det som DELPHI4Test2011 kan. DELPHI4Test2011 har emellertid också testats på min gamla Windows 95-dator — med felfri funktion [men med tio ggr lägre CPU-frekvens], vilket endast understryker helhetslösningen [DELPHI4Test2011 bör fungera i samtliga Windows operativsystem].

 

DELPHI4Test2011 ligger inbakad i en ZIP-fil — en länk [från särskilt ställe i UNIVERSUMS HISTORIA] leder dit och en dialog öppnas (med Öppna eller Spara);

Om du vill använda innehållet måsteZIP-filen sparas på datorn, och sedan packas upp (HögerKlicka på ZIP-katalogen, välj Extrahera alla);

Delphi4Test2011 är inlagt i en katalog med namnet ”DELPHI4Test2011” (vidare nedan i Uppackning);

Man kan behålla det namnet, eller ändra till något annat;

Genväg — ett bekvämt sätt

Sedan man bestämt katalognamnet där DELPHI4Test2011 finns med underkataloger, kan en genväg skapas till skrivbordet [högerklicka på exe-filen och välj Skicka till Skrivbord] (och därifrån till StartMenyn, om man så vill);

OBS: Ändras katalognamnet sedan genvägen skapats bryts förbindelsen — genvägarna måste tas bort och nya skapas;

Sedan är det bara att köra igång DELPHI4Test2011.

En fjärilsikon [Gratis för icke-kommersiell användning] finns medskickad i DELPHI4Test2011-katalog som jag själv använder som skrivbordsikon och även som huvudikon i programmet

[papillon-SZ.ico, av ZaKar — finns t.ex. på

http://www.veryicon.com/icons/application/shining-z/

NOTERA att nära samma fjärilsikon också finns som Windows msn-ikon, Msn-Butterfly.ico, se

http://www.iconarchive.com/show/msn-buddy-icons-icons-by-nelson/Msn-Butterfly-icon.html

];

Man kan använda den (eller andra gratisikoner från webben för icke kommersiell användning); byt ikon genom att högerklicka på genvägen, välj Egenskaper och Byt ikon, med vidare.

 

Ikonen i DELPHI4Test2011-fönstret går [f.n.] dock inte att byta för dig som användare.

 

   TIPS: Vill du ha bort de fula genvägspilarna från skrivbordsikonerna finns gratisprogrammet FXVisor på webben, men det fungerar [Maj2011] inte i Windows 7 (64-bitarsversionen).

Teckensnittet Forte finns inte med i Windows 7 [och det är inte helt avgörande för utseendet i DELPHI4Test2011]; det finns dock gratis att ladda ner från bravenet.

Avinstallation:

AVINSTALLATION:

Ta bort genvägarna, radera DELPHI4Test2011-katalogen [markera (Enter) och tryck Delete];

Inga omgivande datordomäner, register, eller andra detaljer påverkas;

DELPHI-program — de bygger helt på Windows API-kommandon — är rent programtekniskt inte mera dramatiskt att ta bort (eller installera) än en vanlig textfil; då den raderats, finns den inte längre. Finns den, är det bara att öppna och läsa.

 

Notera:

DELPHI4Test2011-katalogen innehåller BMP-filer som används av programmet internt och som man själv kan nå och kontrollera, samt en del txt-filer [se Textfilerna] som programmet använder internt, t.ex. i samband med kataloglistning vid textsökning. Ta inte bort någon av dessa filer. Fattas någon del, kommer inte programmet att fungera korrekt.

 

Uppackning

Hur zip-filen importeras, packas upp och raderas

 

 

 

 

 

 

 

·         Välj Spara på ÖppnaDialogen för DELPHI4Test2011.zip-filen;

·         Vi antar att den valda Sparkatalogen är Imports [se bilden ovan];

·         Efter ENTER ser katalogbilden ut som »Efter Importen», bilden ovan;

·         Markera den intagna katalogen DELPHI4Test2011.zip, högerklicka och välj Extrahera alla;

·         En dialog kommer upp med ett katalognamnsförslag TYP
”C:\ ... \Imports\DELPHI4Test2011”;

·         Den katalogen finns redan inskriven (antas förslaget kommer kataloger i två efterföljande noder att få samma namn, det är OK men här överflödigt);

·         Stryk ”\DELPHI4Test2011”, eller ange en egen plats, tryck ENTER;

·         Katalogbilden ser då ut som ovan i bilden Efter Extrahera alla;

·         Zip-filen kan nu tas bort, vilket ger slutresultatet längst till höger i bilden ovan, Efter radera Importen.

·         SÖKVÄGEN till installationskatalogen visas i statusraden för allmänna meddelanden nederst i DELPHI4Test2011 med musklick på programfönstrets högra ramlist (om Shifttangenten hålls nere samtidigt skickas texten till Urklipp, se Special)

·         Program som installeras utom registerhantering i Windows (Vista) brukar (min dator) koppla ihop sig med typ DVD-enheten om det finns någon skiva i: Försöker man öppna DELPHI4Test2011 (eller Paintbrush från Windows 3.1) med en DVD-skiva i DVD-enheten, öppnar inte programmet förrän skivan börjar snurra. Det gäller bara första gången. Avslutas programmet och startas igen, förlöper allt som normalt.

 

 

Med kännedom om ovanstående PRINCIP blir det enklare att planera hur man vill ha sin Import i förväg.

— Sedan katalogen extraherats kan den självklart flyttas-kopieras-dupliceras till valfri plats. Det finns inga restriktioner på den punkten.

 

 

Installation av DELPHI4Test2011 — se även från Anvisningar — men FÖRST din egen användargaranti:

 

 

 

Din egen användargaranti för DELPHI4Test2011

 

DELPHI4Test2011 är avsett som en HJÄLP i Ditt/mitt datorarbete — inte som felkälla eller shoppingcenter för förtret. Upplever du minsta obehag eller tycker dig märka funktionsfel, brister eller andra egenskaper som motverkar syftet att BERIKA ditt datoranvändande, måste du omedelbart stänga programmet och inte använda det mer: ta bort installationen enligt  anvisningarna i AVINSTALLATION (radera installationskatalogen) så att den inte längre finns på din dators lagringsmedia.

   Min dator är inte din dator: Jag kan inte garantera att min egen personliga datorupplevda positiva erfarenhet av DELPHI4Test2011 också gäller för din datormiljö. Du måste vara helt klar över att möjligheter finns i olika datorer med olika inställningar som KAN uppvisa möjliga brister inför dina ögon, upphakningar eller andra negativa effekter som jag själv aldrig kan se, hur mycket tester jag än utsätter programmet för, och att det är den allmänna risk du alltid måste acceptera för att överhuvudtaget ens kunna starta upp DELPHI4Test2011 — för ditt eget inledande acceptansTEST: det är den allmänna riskfaktor som alla datoranvändare måste räkna med.

   För virusrisker och andra liknande intrång kan du för DELPHI4Test2011:s del känna dig helt lugn: programmet innehåller bara ren DELPHI-kod (Borlands Pascal med Borlands Turbo Assembler): virusdomäner existerar inte. Övriga filer är vanliga bildfiler (bmp), pekare (cur), ikoner (ico), teckensnitt (fon, ttf) och textbaserade datafiler (txt), de har tillsammans med exe-filen i DELPHI4Test2011 genomscannats särskilt med Microsoft Security Essentials för särskild viruskontroll av mig och befunnits helt rena.

   Du måste tillförsäkra dig om att du fullt och helt har förstått denna garanti — helst riva av en liten papperslapp och skriva JA på den, och sedan riva sönder den i små bitar och kasta dem i brännbart.— så att du i efterhand, om eventuella brister trots allt skulle visa sig, FRÄMST inte anklagar dig själv för ett förhastat eller dåligt beslut, att du kan möta alla konsekvenser med fast och lugnt sinnelag i ditt datorarbete tillsammans med DELPHI4Test2011.

   Är du det minsta tveksam: avstå.

 

Installera/LaddaHem DELPHI4Test2011

http://www.universumshistoria.se/AAALib/DELPHIHelp/HTM/DELPHI4Test2011.zip

Se hur zipfilen är upplagd.

 

[När installationsdialogen kommer fram, välj Spara enligt anvisningarna i uppackning].

 

 

 

Exempel på [redan kända] Underliga beteenden i Windows

 

Program som öppnas, öppnas ibland (inte alltid) i bakgrunden

Observerat på mina Windowsdatorer XP, Vista och 7

 

Webbreferenser [8Jun2011] där fenomenet påtalas:

 

”programs open in the background with hotkeys ”

http://www.sevenforums.com/general-discussion/116081-programs-open-background-hotkeys.html

Windows 7

 

”Application windows open in background”

http://forums.cnet.com/7723-6129_102-63181.html

Windows 98

 

”Documents open in background”

http://user.services.openoffice.org/en/forum/viewtopic.php?f=6&t=17570

Windows XP

 

...

 

 

Program som redan har fokus tappar det ibland till ett annat program i programfönsterkön

Observerat särskilt [Windows Vista] i samband med [växling till/från] Windows Media Player tillsammans med andra program — men också på annat sätt [som ännu verkar mera knepigt att komma underfund med — händer dock relativt sällan]

 

Webbreferenser [8Jun2011] där fenomenet påtalas:

 

”FF 4 loses focus sometimes”

http://groups.google.com/group/mozilla.support.firefox/browse_thread/thread/9d792492a86ada76

Windows XP

 

”Windows losing focus”

http://www.groovypost.com/forum/internet-browsers/windows-losing-focus-t96311.html

12Sep2010 — inget datorsystem omnämns

 

”Newly created modal window loses focus and become inacessible in Windows Vista”

http://stackoverflow.com/questions/743713/newly-created-modal-window-loses-focus-and-become-inacessible-in-windows-vista

Windows Vista

 

Närmast ovanstående webbreferens påtalar ett specifikt ”modal window” DELPHI-fenomen [speciellt DELPHI 2006, en långt senare version än DELPHI4],

 

”The issue you have started happening when Windows XP introduced the concept of window ghosting. Due to the unusual architecture Delphi uses (all forms are children of a hidden window — TApplication) many Delphi applications experience the same problem.”

 

”ShowModalWindow” betyder samma som en dialogruta som visar sig och programmet inte kan fortsätta förrän den rutan klickas av. Något liknande problem i DELPHI4 har mig veterligt aldrig förekommit. Dialogrutor av »modal typ» finns också i DELPHI4Test2011 — inforutor som upplyser i något viss avseende, t.ex. »Urklipp har inget bitmap» med »OK» för att komma vidare. Inga som helst problem har i det avseendet (eller något annat avseende) visat sig på mina datorer enligt min erfarenhet (alla testade, Windows 95 | XP | Vista | 7).

...

 

 

ALLMÄNT

 

Vissa Program ställer till mera oreda än vad som kan accepteras — Google DeskTop, iTune och Picasa är mina exempel; Ta bort dem från datorn, använd dem inte med all makt och kraft, min mening: De lämnar rester, stuvar om intill oigenkännlighet, hårdbelastar datorn [vilket tyder på oskicklig programmering] ... KRÄV av programtillverkaren att redovisa MINIMALA ENERGIANVÄNDNINGSEXEMPEL — som talar om HUR effektivt programmet utnyttjar datorn rent STRÖMTEKNISKT. Se Energiexempel 1 och Energiexempel 2 till jämförelse.

 

 

TECKENSNITT som används I DELPHI4Test20xx

 

 

 

Windows Applications

TECKENSNITT som används I DELPHI4Test20xx

Lista över förekommande Font.Name:s i DELPHI4Test-projektet — samplat8Apr2011

 

Century Gothic · Forte · LineaEF · Microsoft Sans Serif · MS Sans Serif · Palace Script MT · Wingdings · Small Fonts · Symbol · System · Terminal · Times New Roman · Verdana

 

 

Förteckning över alla SCREEN.FONTS som finns på (Windows) operativsystemet — i min Windows Vista-dator 256 stycken olika (alla som står i Windows Fonts-katalogen — PLUS de som ev. inte syns där, t.ex. Terminal och System [med flera]) — fås i DELPHI4Test2011 genom att skriva in FontDiagnostics i Ekvationsboxen [Tangent 0] och exekvera med funktionstangent F11; en kopia av listan skickas till Urklipp; ta in den i Anteckningar; Listan nedan (13 teckensnitt) ingår i F11-rutinen; förteckningen visas längst ner i den nyligen beskrivna FontDiagnostics-listan, intill teckensnittsnamnet med ett tillägg ”Found” (Funnen) eller ”NotFound” (InteFunnen) — för snabb översikt.

 

 

  Century Gothic · Forte · LineaEF · Microsoft Sans Serif · MS Sans Serif · Palace Script MT · Wingdings · Small Fonts · Symbol · System · Terminal · Times New Roman · Verdana

 

Förekomster med orange text inte direkt nödvändiga i DELPHI4Test2011

 

 

teckensnitt

bildexempel

 

ev. webbdomän med gratis DownLoad

[efter webbkoll 2011IV9 — andra KAN finnas]

 

Century Gothic

Detalj i utformningen till Numeriska Integraler

 

 

verkar bara kunna KÖPAS

— medföljde Windows

Forte

DELPHI4Test front m.fl.

 

 

bravenet

http://resources.bravenet.com/free_fonts/script/12

 

LineaEF

[Under experimentell utformning, inte direkt aktuellt i DELPHI4Test2011]

 

 

verkar bara kunna KÖPAS

— medföljde Windows

Microsoft Sans Serif

HELP

 

 

verkar bara kunna KÖPAS

— medföljde Windows

MS Sans Serif

FindText

 

 

verkar bara kunna KÖPAS

— medföljde Windows

 

Palace Script MT

 

[Under experimentell utformning, inte direkt aktuellt i DELPHI4Test2011]

Vä.: närmaste matchning till LineaEA [control], finns inte på datorn; Hö.: LineaEA finns.

 

 

verkar bara kunna KÖPAS

— medföljde Windows

Wingdings

FindEdit

 

 

verkar bara kunna KÖPAS

— medföljde Windows

Small Fonts

FindEdit

 

 

verkar bara kunna KÖPAS

— medföljde Windows

Symbol

 

Grafritningen

 

 

verkar bara kunna KÖPAS

— medföljde Windows

System

 

f.n. avställt [kan undvaras, ingår dock generellt från äldre datorstandard]

 

 

verkar bara kunna KÖPAS

— medföljde Windows 3.1, Windows 95

 

Terminal

Separat display till grafritningen | Numeriska Integraler

 

 

verkar bara kunna KÖPAS

— medföljde Windows 3.1, Windows 95

Times New Roman

FindText

 

 

verkar bara kunna KÖPAS

— medföljde Windows

Verdana

Grafritningen

 

 

bravenet

http://resources.bravenet.com/free_fonts/script/12

 

 

 

Fonterna i tabellen ovan (utom orangemarkerade) och nedan finns medskickade i katalogen Fonter till DELPHI4Test2011, de är kopior från mina egna datordomäner som levererades tillsammans med de inköpta datorerna och som legat till grund för programutvecklingarna.

   Hittar du motsvarande säker information som tillåter fri användning av aktuellt teckensnitt (genom DownLoad — jämför min egen undersökning i tabellen ovan höger) kan du i så fall med rent samvete kopiera den medsända delen direkt — eller ladda ner den själv, samt sedan kopiera till Windows Font-katalog. Det garanterar att designen i DELPHI4Test2011 visas korrekt.

 

[Flera källverk understryker vikten av att använda teckensnitt på korrekt sätt (licensdetaljer), men det är inte lätt att hitta någon heltäckande information om vad som gäller i de olika fallen].

 

Har man inte EXAKT de fonter som listas nedan på just sin dator, i detta fall

 

Century Gothic · Forte · Microsoft Sans Serif · MS Sans Serif · Wingdings · Small Fonts · Symbol · Terminal ·

Times New Roman · Verdana

 

kommer operativsystemet att söka efter en närmaste matchning — vilket KAN resultera i en verkligt deprimerande slutprodukt.

 

 

ASCII ANSI och OEM

 

 

ASCII ANSI och OEM

 

ASCII ANSI och OEM

TECKENNOMENKLATURENS centralbegrepp

 

Från DELPI4-hjälpen [runt 2000],

”Responding to the OnKeyPress event”, och ”OEM and ANSI character sets”:

 

ASCII      ”An acronym for ”American Standard Code for Information Interchange” and used to describe the byte values assigned to specific characters. Examples: The capital letter A has an ASCII value of 65. The ASCII code for a space is 32.
In Pascal, you can reference a character by its ASCII code prefix with a number sign (#). Example: To put the symbol for American cents into a character C, for example, you could code ”c := #155”.”

ANSI        ”Windows character set”

OEM        ”the character set specified by the code page of the user’s machine”

 

ANSI character set — våra teckenkoder [Alt+NUMPAD 0NNN] i Windows

— överskådlig tabell i

http://www.medcalc.org/manual/ansi_character_set.php

 

Se även allmän beskrivning i svenska Wikipedia [2011-05-13],

http://sv.wikipedia.org/wiki/ANSI

 

 

 

Snabbstart från första början — det mest användbara: textsökning

 

Snabbstart från första början

 

1. Starta Delphi4Test2011;

 

 

ADMINISTRATÖRSBEHÖRIGHET — Microsofts AdminTerror — behövs för genomläsning av Windowskatalogerna (alla Windows operativsystem efter Windows XP).

— HögerKlicka på Delphi4Test2011-ikonen (eller exe-programmet) och välj ”Kör som administratör”. I annat fall spärrar Windows läsning på vissa kataloger med en File-access-denied-dialog (rödkryssad inforuta), och nedanstående viktiga initiering kommer inte att kunna fullbordas.

 

 

2. Tryck F6 — rotenhetens (C:\) kataloger läses in och lagras i UnitDirList;

3. Markera all text i den ljusgröna textboxen (den används särskilt för filsökning), tryck sedan Delete (grönboxen rensas) och sedan ENTER, FindText-boxen kommer fram;

4. Ersätt FindText med söktexten (versalkänsligt som grundtyp, snabbaste sökningen);

5. Ange filändelse (Tryck TAB), ange filtyp efter *. som sökningen ska avse;

6. Tryck F6, PilNer, välj katalog med PilNer|PilHöger|Vänster för att fälla ut/dra in kataloggrenarna, hela sökvägen visas längst upp i den ljusorangea textstripen (ta bort katalogremsorna med Esc eller F6 igen);

 

 

Om katalogbläddringen händelsevis (återigen) interfererar med Windows AdminTerror (Typ Windows systemfiler, vilka vi här knappast har något intresse av) och en File-access-denied-dialog kommer fram, klicka bara av den och fortsätt bläddringen.

 

 

OBS: Om en katalog innehåller filer visas dessa längst ut i en gråfärgad lista — låt bildskärmsmarkören ligga utanför det fältet, annars prioriteras speciell listgallring (aktuellt pekad filtyp kan rensas från listan men inte från datorn med Enter för att kolla upp speciella förekomster), sätt peken utanför gråfältet och skrolla i fillistan med Ctrl+PilUpp|Ner

7. Välj sökningens omfattning;

[Enter (senaste söklokalen, inte aktuell första gången), direkt efter nr5 ovan],

Ctrl+Enter (vald katalog utan underkataloger, s.k. InlineSökning),

Ctrl+Shift+Enter (vald katalog med alla underkataloger, s.k. FullTextsökning),

[Shift+Enter (Dina egna förvalda katalogplatser, inte aktuellt första gången)] (används sällan eller aldrig av Proffs).

 

En sista dialog frågar om OK [sista chansen att ångra sig];

Tryck ENTER för sökning, sökningen börjar — avbryt när som helst med att trycka på valfri tangent [utom PrintScreen];

 

När sökningen är klar:

Shift+PilUpp|Ner bläddrar i söklistan:

Alt+PilHöger komprimerar listan med alla träffar;

Alt+PilVänster åter till alla genomsökta;

Öppna fil:

Placera peken på det blå färgfältet, tryck ENTER.

 

Ny sökning

För en ny sökrunda, tryck tangent F (ta bort bildskärmsmarkören från blåfältet först).

 

Alla Efterföljande TextSökningar:

Efter att DELPI4Test2011 avslutats och förutsatt ovanstående genomgånget: Nästa gång programmet startas, och sedan alla efterföljande: tryck F, fortsätt sedan som ovan från nr4. De tio senaste söksträngarna nås med Alt+PilUpp|Ner.

 

DELPHI4Test2011 är (mycket) snabb

Se även jämförelser med DELPHI4Test2011 och andra (Jun2011) — DELPHI4Test2011 är i varje fall i jämförelse med Microsofts egen hemmaproduktion (allt fram till Windows 7, sedan vet vi inte) grymt snabb — och träffsäker. Testa själv. Se även listan i Jämförande Tester.

 

Sökfunktionen (och övriga funktioner) i DELPHI4Test2011 har testats och fungerar garanterat OK på följande testade Windows operativsystem (mina egna datorer) [och alla mellanliggande, min förmodan], respektive Windows 95 (se bara till att bildskärmen är inställd på TrueColor [32-bit]), Windows XP, Windows Vista, Windows 7 [64bitLapTop]. Se även mera utförligt från Användning och Installation.

 

Se även mera utförligt från Sökverktyget i DELPHI4Test2011.

 

 

 

Hur ZIP-filen är upplagd

Uppläggning:

http://www.universumshistoria.se/

AAALib/

DELPHIHelp/

HTM/

DELPHI4Test2011.zip

DELPHI4Test2011-filer

DELPHI4Test2011HELP-filer

DELPHI4Test2011ref-filer

DELPHI4Test2011.htm

DELPHI4Test2011HELP.htm

DELPHI4Test2011ref.htm

;

http://www.universumshistoria.se/AAALib/DELPHIHelp/HTM/DELPHI4Test2011.zip

;

DELPHI4Test2011.zip

——————————————————

DELPHI4Test2011/

*.bmp

*.ico

*.cur

Test2011.exe

*.txt

Bmp

Fonts

Help/

*.bmp

HTM/

DELPHI4Test2011-filer

DELPHI4Test2011HELP-filer

DELPHI4Test2011ref-filer

DELPHI4Test2011.htm

DELPHI4Test2011HELP.htm

DELPHI4Test2011ref.htm

 

 

 

Uppdatering2014, fördjupningar i DELPHI4 — en mera vidlyftig Delphi4Test2011-version är på gång, se Kommande Program.

 

 

29Okt2014X20

UPPDATERING 2014 Delphi4Test2011

Föregående versions förseglingsdatum för zip-filen 6Jun2011-07-06

 

 

MANUALEN TILL DELPHIHJÄLPEN efter uppdateringen nu Okt2014 påverkas bara av

1. Ändringen från tangent D till Ctrl+Shift+D (DriveUnits) och

2. Fönsterrubriken (inte justerad i manualens illustrationer) med införda ordningsnummer istället för datum.

   Övriga delar redovisade nedan berör enbart bakomliggande buggfixar och en del städning som inte omfattas av manualens beskrivning.

— Föregående Delphi4Test2011-version finns nu inte längre tillgänglig via zip-filen (se Installation). Ändringarna nedan visar nya versionens fönsterrubrik som:

DELPHI4Test2011 | —# (Project DeWe2011).

 

 

Buggfixar och en del rensningar i programkod från föregående version (6Jun2011-07-06 Zipfilens föregående förseglingsdatum) har gjorts som nedan — fördröjningen (2011-2014) delvis beroende på ovisshet i en del Delphisammanhang (se särskilt Error1664 nedan), samt hur att vidare organisera ev. uppdateringar (om alls).

— Vissa genombrott har skett (2014) som (kanske) kan ställa fram DELPHI4 (gratis) i ett vidare ljus. Kontakter för detta är under utarbetande, men inget är ännu säkert (DELPHI4 kan [nämligen, galant, enligt test] installeras på samtliga Windowsversioner, och därmed finns ett superbt utvecklingsverktyg för den datorintresserade).

 

 

FelRättningar, föregående Delphi4Test2011

29Okt2014 — genomförda justeringar och rättelser i Delphi4Test2011 (för WebbUppdatering):

 

·         GridColorBuggen, ordnad (se beskrivning ovan: programmet avslutas om rutnätsfärgen i Grafritningen sätts som svart | glömd TestRest).

·         1664-felet, Rotera VändHorisontellt, ordnat (komplicerat Delphi-fel som leder vidare ..).

·         DriveUnit-funktionen med enbart tangent D, justerad till Tangenterna Ctrl+Shift+D (för undvikande av oavsiktlig beröring — Manualen ändrad).

·         StreckRekt, ordnad (missar en kant om rektangeln dras annan än från LeftTop).

·         Grådimningen av Ekvationspanelen efter fria F4 (Palett), ordnad (föregående bristfunktion: fristående F4=Palett och sedan tangent 0 = Ekvationspanelen visar denna med grådimmat inmatningsfönster: tas bort|återställs med F11); felet nu åtgärdat.

·         Fönsterrubriken med tidigare datum, ändrat till ordningstal (Microsoft|Windows respekterar inte programsatt ordning, ändrar typ till PM|AM, Grejar&Ändrar beroende på WindowsVersion); ändrat till ordningsnummer som ovan.

·         Rest1: Gamla Ctrl+R Unit1 (StreckRekt endast) HelpRotations Unit3 från Delphi1 avställt.

·         Rest2: ToggleEdgePanels FormKeyDown Unit 1 NumPa|234 avställt (visar gömmer fönstrets kantpaneler, ingen eg. funktion, rest från utv.), avställt — (även Ctrl+ 1,2,3,4 längre ner samma block i Unit1).

 

GridColorBuggen: [‡]

RITBUGGEN Unit2 Delphi4Test2011:

if GRIDCOL=0 then halt;

Justerat (Nov2012) i DeWe men inte uppdaterat på DeLPHI4WeBBEN.

 

Felet visar sig om man på Grafritningen (Tangent 0 eller Ctrl+U) trycker F4 (Palett), behåller PekPositionen på Svart och sedan tangent S (»Square») och sedan F11 (Kör): programmet avslutas.

— Man KAN häva programStoppFelet genom att skriva in kod annan än 0 i DATA.txt-filen

 

 

Fyra poster finns i DATA.txt:

 

GraphColor

CrossColor

GridColor

Webber

 

Det är GridColor-posten (tangent S efter F4  grafritningen) som jävlas om den håller 0.

— Startvärdet (ljusgrå [Shift + F11]) är f.ö. 12763842.

— Programmet kan fortfarande användas om man ersätter 0:an med något annat >0 och undviker att använda svart=0 för rutnätet (tangent S efter F4 i Grafritningen).

 

— starta, och sedan INTE använda Svart för rutnätet (S efter F4 i Grafritningen).

 

Upptäcktes 2012 av mig, och ändrades då i Masterprogrammet, men utan motsvarande justering i webbVersionen (Vissa obesvarade frågor fanns om hur att organisera ändringar, nya versioner: till hit: omständligt) .

   Det fick bero. Men nu kommer vi igen.

— DET, plus en del ytterligare som nedan, gjorde att den här presentationen visade sig.

 

Programkoden har nu justerats och GridColorBuggen finns inte längre.

 

1664Felet: [‡]

EN OMFATTANDE DJUPDYKNING I DELPHI4

Buggar och Komplikationer 2014 från Delphi4Test2011

 

 

 

Om 16;64-felet generellt och (ev) övriga i DELPHI4:

 

— Ytterligare ett bildfel i Delphiprogrammeringen upptäcktes (Okt2014: 388;256-felet). Men det felet är inte aktuellt i Delphi4Test2011 (därför att SkipWhite bara innefattar VITT) — men det ansluter till sammanhanget:

 

 

I utvecklingsformen (separat projekt, Jun2014) för utformning av flytbildsfunktion med försök att eliminera (transparera) godtyckliga bakgrundsfärger, visade sig underliga Access Violation-avbrott (AVA), till synes kaotiskt. En närmare analys visade att intagna bilder (från digitalkamera) större än bildskärmen (23’’) resulterade i konsekventa AVA — tillsammans med MoveSkipWHITE-funktionen (Tangent W). När en extra  marginal på minus en pixel lades till i ScanLine-blocket, upphörde felet.

   Bakgrund:

— Så länge en TYP B.TransparentColor:= clWhite; användes tillsammans med ordinära Image1.Canvas.Draw-funktioner, alltså utan inblandning av ScanLines, såg allt ut att fungera perfekt i Delphi4.

— Men det visade sig strax att för eliminering av andra bakgrundsfärger, Delphi började uppföra sig som rena vildhästen: rent kaos (Delphi(4)s BitMap-funktioner är delvis erkänt krångliga att handskas med enligt olika webbforum i ämnet, så vi kan inte utesluta att författaren här fortfarande efter 15 år befinner sig på amatörens nivå, och därmed olika felgrepp).

— För att ta ett nytt grepp utformades då en reguljär ScanLine-rutin för att helt enkelt plocka in de bildpixlar som skiljer sig från en given bakgrundsfärg.

— DEN LÖSNINGEN såg ut att fungera perfekt, men grusades snart med följande upptäckt:

1. Intagna bilder större än bildskärmen ger AVA; minskas ScanLine-loop-gränserna med 1 upphör det felet;

2. Perfekt funktion — tills plötsligt (och turligt för upptäcktens del 20Okt2014) ett bildmått 388;256 kom med i bilden (även 2·388×256 ger AVA):

— AccessViolationAVBROTT (AVA) inträder när SkipWhite-funktionen aktiveras.

— Lösningen i detta fall — liksom i det reguljära 16;64-felet, se längre ner här i huvudtexten, blev att helt skippa ScanLine-funktionen och istället arbeta direkt på minnesdata via adresspekare (TMemoryStream-rutiner). Med den lösningen försvann alla observerade AVA.

 

 

— Flytbildsrutin med ScanLines och ENBART VIT BAKGRUND för eliminering av vitt (SkipWhite — bilden flyttas på sättet med s.k. transparent bakgrund som vanligen är vit) är inget problem i Delphi4 (Tangent W).

— Försöker man däremot införa andra bakgrundsfärger än vitt i programkoden, samma ScanLineRutin, uppkommer Access Violation-avbrott — DELS om bildytan är av formen större än bildskärmen (Screen.Width eller Screen.Height) eller som det nu också visade sig DELS i fallen a388;b256, ab bägge hela tal.

— De ovan observerade ScanLine-felen försvann alla då istället TMemoryStream-rutiner insattes (se kodexempel nedan i 16;64-felet).

— Det måste sägas här att SkipWhite-felet omnämnt ovan INTE har visat sig för min del i Delphi4Test2011, inte för bilder större än bildskärmen, och inte för några andra heller: inte av de ovan observerade värdeformerna och veterligt inga andra heller. Anledningen torde främst vara den mera enkla grundkoden i Delphi4Test2011: andra bakgrundsfärger än enbart vitt förekommer inte.

 

 

 

16;64-felet i DELPHI4 Delphi4Test2011 med Rotera (R) och VändHorisontellt (H)

Delphi4-Bugg upptäckt 15Sep2014:

 

— Alla bildrektanglar som är återförbara på bredd-höjdvärdena eller höjd-breddvärdena

a·16;b·64 med a och b som heltal

ger ett funktionsavbrott typ ACCESS VIOLATION:

 

rödkryssad ruta som inte stänger programmet men avbryter funktionen — ett otillåtet dataminnesövertramp sker någonstans i programmet som den inbyggda DelphiDebuggern avstyr med ett Access Violation-meddelande:

— bara att klicka av och fortsätta, men funktionen är bankrutt

 

— Märkligt är det i sig att jag själv (som den förmodligen mest frekventa Delphianvändaren i dessa sammanhang) under nu mer än tio års frekvent användning [från 2002]) ALDRIG tidigare hade stött på något liknande (utvecklingar från Delphi1 [PC&MAC 4/97]). Separat LoopTest med successiva bildmått har SÄKERT verifierat RH-16;64-felet.

 

Vad beror 16;64-felet (R och H i Delphi4Test2011) på?

— TMemoryStream-funktionen häver felet

 

I separat vidareutveckling av Delphi4Test2011 på andra projekt har följande framkommit:

— ScanLine-funktionen i Delphi4 som sådan FÖREFALLER uppenbarligen DELVIS KORRUPT:

— Test med exakt samma funktion (Rotera VändHorisontellt) med Delphi4:s TMemoryStream-funktion (DelphiKod, se nedan) häver felet.

   TMemotyStream-funktionen är ScanLineOberoende, och läser direkt från dataBildminnets raka adresslängd, och därmed oberoende av typen ev. felkopplande ScanLine-algoritmer.

 

ScanLine-proceduren nedan (innehåller särskilda delar som kopplar till flytbildsrutiner i Delphi4Test2011) med rotationer i steg om 90° (Tangent R):

 

UTGÅR på grund av 16;64-felet: ..................................................................................................................................... :

Procedure TForm1.ScanRot(SourceIm: TImage);

var

x,y,y3,z: Integer;

     A,B: TBitMap;

   Pa,Pb: PBytearray;

     H,W: Integer;

       R: TRect;

begin

  Image1.Canvas.CopyMode:= cmSrcCopy;

  A:= TBitMap.Create;

  B:= TBitMap.Create;

  try

    R:= Bounds(0,0,CRd.Bottom,CRd.Right);

    BitmapRect(CRs,A);

    BitmapRect(R,B);

    A.Canvas.CopyRect(CRd,SourceIm.Canvas,CRs);

    A.PixelFormat:= pf32bit;

    B.PixelFormat:= pf32bit;

    W:= A.Width-1;

    H:= A.Height-1;

    for y:=0 to H do

    begin

      Pa:= A.ScanLine[y];

      y3:= 4*y;

      for x:=0 to W  do

      begin

        Pb:= B.ScanLine[W-x];

        for z:=0 to 3 do

        Pb[y3+z]:= Pa[4*x+z];     Här stannar DelphiDebuggern efter Access Violation på 16:64-rektanglar

      end;{endForX}

    end;{endForY}

  S:='ScanRotCompleted';

    BitmapToIm(B);

  finally

    A.free;

    B.Free;

  end;

end;{endScanRot.2002IX13}

UTGÅR på grund av 16;64-felet: ..................................................................................................................................... .

 

ScanLine-typen ovan ersatt nedan av TMemoryStream — 16;64-felet eliminerat:

 

Ersatt av TMemoryStreamProcedur 29Okt2014 | Unit1A ............................................................................................... :

Procedure TMScanRot(SourceIm: TImage);

var

  A,B:     TBitMap;

  R:       TRect;

  Pa,Pb:   PChar;

  P,iP:    PChar;

  TMa,TMb: TMemoryStream;

  W,H,x,y,

  Sx,Ex:   Integer;

begin with Form1 do begin

  TMa:= TMemoryStream.Create;

  TMb:= TMemoryStream.Create;

  A:= TBitMap.Create;

  B:= TBitMap.Create;

  try

    R:= Bounds(0,0,CRd.Bottom,CRd.Right);

    BitmapRect(CRs,A);

    BitmapRect(R,  B);

    A.Canvas.CopyRect(CRd,SourceIm.Canvas,CRs);

    H:= A.Height;

    W:= A.Width;

    A.PixelFormat:= pf32bit;

    B.PixelFormat:= pf32bit;

    B.Canvas.Brush.Color:= clWhite;

    B.Canvas.FillRect(CRs);

    A.SaveToStream(TMa);

    B.SaveToStream(TMb);

    Pa:= TMa.Memory;

    Pb:= TMb.Memory;

    for y:= 0 to H-1 do begin

      Sx:= (H-1-y)*W;

      Ex:= Sx + W-1;

      for x:= Sx to Ex do begin

       iP:= Pb+54 + 4*(y + H*(x-Sx));

        P:= Pa+54 + 4*x;

       Byte((iP +2)^):= Byte((P +2)^);

       Byte((iP +1)^):= Byte((P +1)^);

       Byte((iP +0)^):= Byte((P +0)^);

     end;{endForX}

    end;{endForY}

    TMb.Position:= 0;

    B.LoadFromStream(TMb);

    SRC:='ScanRotCompleted';

    BitmapToIm(B);

  finally

    A.Free;

    B.Free;

    TMa.Free;

    TMb.Free;

  end;

end;{endWithForm1}

end;{endTMScanRot}

Ersatt av TMemoryStreamProcedur .................................................................................................................................. .

 

Sedan på samma fason för FlipHorizontal. ScanLine FlipVertical visar f.ö. inget 16;64-fel.

— Dessa funktioner är nu 29Okt2014 insatta och testade i Delphi4Test2011 och visar att 16;64-felet eliminerats (och återkommer om vi kopplar över igen till gamla ScanLine-rutinerna).

 

StreckRektangeln: [‡]

STRECKREKTANGELRUTINEN FÖR BCD-DRAGNINGAR JUSTERAD:

 

 

— StreckRektangelRutinen för markering av FlytObjekt visade sig kräva KAMP för att besegras: Först upptäcktes att hela DELPHI4 kraschade ihop OM man försökte köra CopyRect DÅ streckrektangeln drogs (utan vidare) enligt alternativen från resp. hörn BCD, illustrationen ovan. Den upptäckten ledde till modifieringen (på Unit1 Procedure TForm1.CopCutDel)

 

if Xm1>Xm0 then            begin

X:= Xm0; X1:=Xm1;        end;

if Xm0>Xm1 then            begin

X1:=Xm0; X:= Xm1;        end;

if Ym1>Ym0 then            begin

Y:= Ym0; Y1:=Ym1;         end;

if Ym0>Ym1 then            begin

Y1:=Ym0; Y:= Ym1;         end;

R:= Rect(Xm0,Ym0,Xm1,Ym1);

 

Det gjorde i vilket fall att DEELPHI4 INTE kraschade. Dock blev resultatet av kopieringarna som visas ovan: Alla BCD-alternativen missar 1y|2|1x insättningspositionens linje med 1 pixel — grunden är att WindowsAPI-rutinerna generellt skiljer på 1 pixel i de olika sätten för rektangeldragningar, man måste studera det särskilt som programmerare (vi förutsätter kännedomen).

— Nedanstående justering (7Nov2013) verkar ha ordnat upp allt: Alla ABCD kopierar nu objektet korrekt efter insättningspositionen (Insert):

 

if Xm1>Xm0 then            begin

X:= Xm0; X1:=Xm1;        end;

if Xm0>Xm1 then            begin

X1:=Xm0+1; X:= Xm1;    end;

if Ym1>Ym0 then            begin

Y:= Ym0; Y1:=Ym1;         end;

if Ym0>Ym1 then            begin

Y1:=Ym0+1; Y:= Ym1;     end;

R:= Rect(X,Y,X1,Y1);

 

Ekvationspanelen, Grådimningen efter F4: [‡]

RutinJustering Unit1 FormKeyUp (20Jun2014)

 

Föregående (EkvationsPanelen, Tangent 0 eller Ctrl+U)

 

if Panel19.Visible then

 

uppflyttad FÖRE

 

Edit1.ReadOnly:= True;

Edit4.ReadOnly:= True;

Edit4.Color:= RGB(220,220,220);

 

— Därmed kan paletten (F4) anropas utan konflikt med Equations.

   Annars GRÅLÅSNING på EquationPanelen (Edit4 Panel19) då denna tas fram — i sig olyckliga »komplicerade låsningar» med färgvalen till ritning, xy-kryss och Grid som Defaultas med Shift+F11.

— Man kan f.ö. INTE Escape:a bort Grådimningen efter F4 med EquationPanelen uppe: det förutsätts att man ska göra ett färgval.

— ESC i det läget tar bara bort EquationPanelen (Status[60]:=’1’), och enda sättet att komma tillbaka är med Run=F11.

— Programmeringen utgår ifrån olika VAL: om inget annat återgå till normalt med NORMAL tangentexekvering, här (F11) för Equations.

 

Fönsterrubriken: [‡] Delphi4Test2011

 

FÖNSTERRUBRIKEN med

TID DELPHI4Test2011 | TID

 

 

för successivt öppnade fönster har visat sig mera krånglig än lätt att hålla reda på;

— Frånsett 24h-SIFFERFORMATET som i och för sig är ENKELT — dumpen ovan från en bärbar Windows7-dator — visar det sig att andra Windowsversioner av typ Windows7 INTE respekterar de bestämda programrutinerna, utan GENERALISERAR FÖR MÄNSKLIGHETEN genom att ÄNDRA 24h till 12hAm/Pm — vilket GJORDE saken ÄNNU värre.

— Vi har SÅLEDES ändrat fönsterrubriken till varje öppnat fönster till 

 

TID DELPHI4Test2011 | nummer.

 

 

XY-displayens tidigare något trånga utrymme har nu också breddats så att totalt max 9999;9999 kan visas.

 

— DET VISADE SIG DÅ

— Microsofts VANLIGA TILLTAG med att KÖRA ÖVER publiken

(Företaget stannar också, lägger i backen och backar över igen, för att vara helt säker på att inget återstående liv existerar utanför företagsgrindarna)

— att WindowsVista — enligt test INTE Windows7 (XP inte testat) — från 9+ öppna fönster lägger in en »STÄNG-GRUPP» längst ner i aktivitetsfältremsan: TRYCKER man på den — bekvämt och bra — poppar YTTERLIGARE 9+ stycken ”Cannot create *.-file”-meddelanden upp:

— DELPHI4Test2011, programavslutning, sparar undan kördata på separata txt-filer och som används vid nästa programstart (Fortsätter där man slutade sist). Hindras den rutinen, poppar felmeddelande upp.

— Man måste då, totalt i WindowsVista, klicka av 2×9+-fönster för att avsluta.

   Hur fixar vi det?

— Med införandet av en extra CheckAllOpenWindows-specialrutin i programblocken OnCreate och OnClose infann sig efter visst trixande en tillfredsställande lösning: alla 9+ öppna DELPHI4Test2011-fönster försvann utan minsta spår.

 

Men WindowsSystemet (Microsoft) respekterar inte alltid den extra numreringen: Ibland visas ordningsnumret om flera är framme, ibland inte. DEPHI4Test2014 ... DEPHI4Test2014 ... DEPHI4Test2014 ...  . Resten får man räkna ut själv. Microsoft Corporation.

 

Rest1: [‡]

Ctrl+R: En kvarglömd utvecklingsrest från gamla Delphi1 som först användes för 90°-rotationer (endast från streckrektangel, Ctrl+R) har avställts (en enklare panel visades med CheckBox och en del annat, den kan nu inte längre nås).

 

Rest2: [‡]

Tangentkombinationer Ctrl+ 1 2 3 4 och NumPad 0 1 2 3 användes (stundtals frekvent) i utvecklingsdelarna i samband med olika panelövningar (först från Delphi1 i slutet av 1990-talet för min del) och har sedan dess ”bara stått där” till ingen nytta. Nu är dessa tangentkommandon avställda och ger inget svar längre: Panelerna i programfönstrets Övre/Undre/Vänstra kanter kunde tas bort/tas fram med dessa (samt annat gömt under som tillhör/tillhörde andra utvecklingsdelar).

 

 

 

Kommande, ytterligare användbara programverktyg från Delphi4 [2014]

 

 

Under utformning

 

 

I vårt allmänna datorarbete vill vi kunna

 

 

·         redigera — väsentligen förbättra — naturfotografier i färg, skärpa och kontrast



·         lägga snygga (stora) texter på fotografier



·         rita linjer och cirklar PRECISERAT OCH SNABBT speciellt för allmän elektronik (kretsscheman)



·         utföra enklare (men avancerade) justeringar på bilder via olika kloningsverktyg (SexKronan)



·         rita cirklar (och rotera) ellipser och rektanglar på precisionsbas (för allmänna naturveten|Tekniska|Skapliga ändamål)

 

 

Det är (2014 allt mera) SVÅRT att hitta den typen SAMLAD i några »enkla elementära gratisprogram» på webben:

— svårigheten är (främst) den, om man alls hittar något sådant program (UTAN ATT HALVA DATORN KAPAS AV EXTRAINSATTA MODIFIKATIONER MAN ALDRIG HAR FRÅGAT EFTER), att navigera i myllret av verktygsfunktioner UTAN att tappa tråden för huvudämnet (innan nästa julafton hinner inträda): programlösningarna tenderar att bli långrandiga i Klickandet och Letandet efter »det man vill ha». Det finns förvisso en del användbart, absolut. Men (ofta) med mindre upphetsande resultat (och ibland kanske en del förvånande bra resultat). Det beror till viss del (som det har visat sig) på (stundtals) STORA svårigheter att UTFORMA ett vettigt program OCH funktion. Jämför textsökningen i Windows (efter Windows 95: rena mardrömmen).

 

Nu (2014) har många tidigare olösta detaljproblem funnit vissa lösningar som gjort det möjligt att samla en del av ovanstående under ett och samma tak.

— Avsikten här i UniversumsHistoria är att (inom kort) försöka ge ut ett gratisprogram (Delphi4Test2011 Version 3) med dessa verktyg.

 

 

 

 

 

innehåll: SÖK på denna sida Ctrl+F

 

 

 

DELPHI4Test2011ref

ämnesrubriker

                      

 

innehåll

          DELPHI4Test2011 — referensbihang

 

                         DELPHI4Test2011.htm — huvuddokument — HJÄLPDOKUMENT FÖR DELPHI4Test2011

 

                                      DELPHI4Test2011ref.htm — kompletterande

 

                         DELPHI4Test2011HELP.htm — särskild beskrivning

 

               Enhetsåtkomsten för sökverktyget

 

                                      Exempel från artikelförfattarens egna datorer — Windows 95 | XP | Vista | 7

 

                                      GetDriveType

 

                                                         Drivenheternas olika typer

 

                                                         Enheterna och deras status i Windows

 

                                                         Förstörd CD-RW-enhet

 

                                                         Bakgrunden till Enhetsvalen i Windows

 

               GetVolumeInformation

 

                                      Programexempel

 

                                      Access Granted

 

                                      Två jämförande Enhetslistare

 

                                      DelphiHjälpen på GetVolumeInformation

 

               SetErrorMode-syndromet

 

                                      Delphi om SetErrorMode

 

                                      Citat ActiveState Community

 

               Textfilerna i DELPHI4Test2011-katalogen

 

                                      Hur textfilerna skapas

 

               Webbexempel

 

                                      Webbexempel på ofullbordade helhetslösningar

 

               Utvecklingen av DELPHI4Test2011

 

                                      Utvecklingen av DELPHI4Test2011

 

                                      Användning, Support och Installation — Anvisningar · Manual

 

                                                         Support

 

                                                         Installation

 

                                                         Avinstallation

 

                                                         Uppackning

 

                                      Installation av DELPHI4Test2011 — din egen användargaranti

 

                                      TECKENSNITT som används I DELPHI4Test20xx

 

                                      ASCII ANSI och OEM

 

                                      Snabbstart från första början

 

                                      Hur ZIP-filen är upplagd

 

               Uppdatering 2014

 

                                      Felrättningar

 

                                      1664Felet

 

                                      Kommande program

 

 

 

 

referenser

 

 

 

 

Senast uppdaterade version: 2014-10-31.

*END.

Stavningskontrollerat 2011-06-08 | 2014-10-31.

 

rester

*

 

DELPHI4Test2011 ·

 

 

√ τ π ħ ε UNICODE — ofta använda tecken i matematiska-tekniska-naturvetenskapliga beskrivningar

σ ρ ν ν π τ γ λ η ≠ √ ħ ω → ∞ ≡

Ω Φ Ψ Σ Π Ξ Λ Θ Δ  

α β γ δ ε λ θ κ π ρ τ φ ϕ σ ω ϖ ∏ √ ∑ ∂ ∆ ∫ ≤ ≈ ≥ ˂ ˃ ˂ ˃ ← ↑ → ∞ 

ϑ ζ ξ

Pilsymboler, direkt via tangentbordet: Alt+24 ↑; Alt+25 ↓; Alt+26 →; Alt+27 ←; Alt+22 ▬

Alt+23 ↨ — även Alt+18 ↕; Alt+29 ↔

 

 

 

 

Åter till HuvudDokumentet DELPHI4Test2011

 

 

 

DELPHI4Test2011ref.htm

Senast uppdaterade version: 31 oktober 2014 |  10:53:06 | 2014-10-31. [GMT+1]Solar[GMT+2]Industry

*