Avatar billede bitvender Nybegynder
23. december 2008 - 09:38 Der er 9 kommentarer

D7 fejl : Error creating form : printer selected not valid

Ovenstående meddelelse er pludseligt dukket op i en applikation jeg har arbejdet på i længere tid.

Meddelelsen er dukket op fra den ene dag til den anden, uden at jeg er mig bevidst om at have foretaget nogensomhelst ændring i kode eller windowsopsætningen overhovedet.

Meddelelsen fremkommer når jeg forsøger at skifte til en form med et quickreport element på, så det er sikkert Qreport elementet det er galt med.

Jeg kan sagtens kompilere applikationen men når jeg efterfølgende kører den, bryder programmet ned.

Jeg har flere versioner af applikationen og det er galt ved dem alle.

jeg har afinstalleret og geninstalleret men default printer men intet hjælper tilsyneladende.

Jeg kan hverken komme frem eller tilbage ...

Ethvert input vil blive påskønnet
Avatar billede hrc Mester
23. december 2008 - 09:53 #1
Har du også dobbeltklikket på TQuickRpt og vaægt printere der?
Avatar billede bitvender Nybegynder
23. december 2008 - 09:54 #2
hrc , vil du lige forklare den nærmere ?
Avatar billede bitvender Nybegynder
23. december 2008 - 10:32 #3
Blot en opklarende kommentar.. Det er ikke muligt for mig at få vist selve formen og derfor ikke muligt at ændre indstillinger for (q)rapportelementet.

Det er helt sikkert et eller andet med quickreport der er galt for jeg har de samme problemer med D3 og D5 i øjeblikket..Qsofts hjemmeside er ikke behjælpelig med en løsning såvidt jeg kan se..

Men for dælen da .. hvordan kommer jeg ud af det her ..
Avatar billede hrc Mester
23. december 2008 - 11:08 #4
Det lyder godtnok som et overordnet problem, men alligevel: Hvis din Delphi 7 genererer formenes DFM-filer som tekst, kan du med teksteditor prøve at slette det ilegale valg af printer (Du kan evt. konvertere DFM-filen fra binær til tekst vha. Convert.exe der ligger i Borlands Bin-katalog) - men tag backup først!

Det var det første jeg ville prøve.

Dernæst ville jeg geninstallere QReport. En afinstallation er ikke gjort ved at vælge "fjern"-punktet og trykke udfør. Alt skal væk: Filer, komponenter, kataloger og registreringer i regdb. På QR's hjemmeside fandt jeg engang en beskrivelse af hvad der skal væk før man installerer igen. Tankevækkende at de ikke bare byggede det ind i deres afinstallationsrutine - men sådan er QReport; en stor klump junkkode.
Avatar billede hrc Mester
23. december 2008 - 11:09 #5
Kan du lave en ny form og smække en QuickRep-komponent på den? Og oversætte den? .. og køre den?
Avatar billede bitvender Nybegynder
23. december 2008 - 13:32 #6
Jeg har set et andet sted på nettet at fejlen kan være relateret til den standardprinter som en given PC er sat op med. Problemet er angiveligt at QRept klasker sammen hvis der er knas med stien til den aktuelle standardprinter.

Jeg kan løse problemet ved at anvende en anden printer som standardprinter. Jeg kan dog ikke umiddelbart konstatere noget "sti" problem med min oprindelige standardprinter - kan sgtens skrive ud til den.

OK, jeg kan altså for såvidt godt arbejde rundt om bøvlet men det er dælme da et problem at Qrept kan brække hele systemet ned på grund af noget som alt andet lige må være i småtingsafdelingen. Ufatteligt at det kan ske under D7 ide'en - jeg kunne forstå det hvis det var når jeg kørte applikationen.

Har du et forslag til hvordan jeg programmeringsmæssigt kan tage højde for problemet i min applikation - så vidt jeg ved er der ikke noget OnCreate event jeg tage fat i ?

Tak for din respons
Avatar billede a_nor Nybegynder
23. december 2008 - 13:56 #7
QReport anvender temp eller tmp til mellemlagring. Hvis default anvendes, kan
den nemt være temmelig lang: c:\documents and settings......
og så er denne streng for lang til qReport ..

Dette har været et problem for mig ved visning af flersidede rapporter, som så fejler ved skift til side 2 !
Avatar billede hrc Mester
27. december 2008 - 18:18 #8
D7 er et ret "aktivt" udviklingsmiljø og med QRep bliver det ikke mindre. Der etableres sikkert kontakt til printerne for at kunne initialisere standardværdier. Hvis du ikke har løst det endnu må det være muligt at slette valgte sti i DFM-filen.

Måske kan man nulstille ovennævnte ved at skyde en klasse ind som fanger og nulstiller stien vha. opslag i RTTI (se Hugos spørgsmål om at gemme til fil (som leder til Borrisholts eksempel på dette)).

Endelig kunne man rette henvendelse til QReps skabere/vedligeholdere om at tjekke for situationen.
Avatar billede bitvender Nybegynder
28. december 2008 - 20:56 #9
Undskyld den sene tilbagemelding men jeg har været jule og familieramt..

@hrc  : dit forslag vedr. "stien" i *.dfm filen er forsøgt efterprøvet men jeg kan ærlig talt ikke finde nogen "sti" i bemeldte fil.

jeg kan godt åbne filen uden at anvende convert (samme resultat som hvis jeg konverterer til *.txt fil) men det hjælper mig ikke rigtigt videre.

Jeg kan sagtens finde registreringerne vedr. fontvalg udskriftbakke etc men ikke noget om hvilken printer der er valgt el. lign... det undrer mig iøvrigt
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester