Just nu i M3-nätverket
Gå till innehåll

Starta en batfil direkt efter en utskrift till skrivare?


Harriet63

Rekommendera Poster

Någon som vet hur man kan få en bat fil att starta direkt efter att man gjort en utskrift till en skrivarport. Skriver ut ett dokument från ett program som kräver en pcl-kompatibel skrivare. Filen som jag skriver till får då filändelsen .pcl. Denna fil gör sedan min batfil om till en .pdf fil. Frågan är bara. Kan man få en batfil att starta då en utskrift till en skrivare har gjorts. Idéer?

 

Länk till kommentar
Dela på andra webbplatser

Anjuna Moon

Har du Net Framework 2.0 installerat så kan jag skriva ihop ett litet program som du kör i bakgrunden, som bevakar en viss mapp. När en fil läggs till i den mappen med .pcl så startas en bat-fil. Tar din bat-fil några parametrar?

 

Länk till kommentar
Dela på andra webbplatser

Men att installera Net Framework 2.0 ska väl inte vara några problem med att göra, eller?

 

 

Länk till kommentar
Dela på andra webbplatser

Anjuna Moon
Men att installera Net Framework 2.0 ska väl inte vara några problem med att göra, eller?

Nädå, och fler och fler program kräver det så det är lika bra att ha installerat i vilket fall.

http://www.microsoft.com/downloads/details.aspx?familyid=0856eacb-4362-4b0d-8edd-aab15c5e04f5&displaylang=en

 

Jag lägger upp en länk till programmet alldeles strax, skall bara buggtesta det lite snabbt.

 

Länk till kommentar
Dela på andra webbplatser

Anjuna Moon

Så, det verkar fungera bra (även om den bat-fil jag testa med inte gör något speciellt =)

Jag har lagt upp programmet här:

http://c2.nordicplaza.com/Program/CheckFolder.exe

 

När du startar det är det förifyllt med data om vilken mapp som skall bevakas, filändelse på filer som den skall bevaka skapandet av samt den batfil som skall köras. Ändra dessa efter dina behov och tryck på Starta för att påbörja bevakningen (Tryck en gång till för att stoppa bevakningen)

 

Skall lägga mig nu, men tittar in imorgon och ser efter om det funkat bra

 

Länk till kommentar
Dela på andra webbplatser

Funkar precis som det ska.

Men kan du ordna att man kan välja de olika indatan mapp batfil och filändelse så att de ligger kvar då man startar programmet nästa gång, typ med någon form av configure fil eller liknande. Eller om du kan ändra att filändelse är standard .pcl för mig.

Går det även på ett smidigt sätt få att detta program autostartar då man startar igång datorn varje dag, för nu antar jag att man måste trycka starta och stoppa, så den alltid ligger och kör.

För övrigt är det helt perfekt och har du inte möjlighet att ordna detta så är jag ändå mycket tacksam för din hjälp.

Tack igen.

 

[inlägget ändrat 2007-04-20 00:38:47 av Harriet63]

[inlägget ändrat 2007-04-20 09:43:11 av Harriet63]

Länk till kommentar
Dela på andra webbplatser

"Hårdkodat:"

Mapp: c:\mailskapare

Batfil: c:\mailskapare\mailskapare.bat

Filändelse: .pcl

 

Eller inte "hårdkodat":

Alltså man kan välja i programmet de olika inställningarna (Mapp Batfil och Filändelse) och de ligger kvar även om man avslutar programmet och sedan sätter igång det igen.

 

Går det även att få, att då man startar igång datorn så startar ditt program automatiskt och "Starta" är aktiverad, allstå mappen kollas direkt vid igångsättning av datorn.

 

Bästa vore om den sedan hamnade som en liten ikon nere i högra hörnet, (Tray tror jag väl att det heter), bredvid klockan så man sen kan stoppa om man skulle vilja, men det verkar iofs avancerat.

 

Detta är vad jag skulle vilja att programmet kunde göra.

 

Tacksam...

 

[inlägget ändrat 2007-04-22 10:50:11 av Harriet63]

Länk till kommentar
Dela på andra webbplatser

Anjuna Moon

Hej, nu har jag gjort de modifieringar du ville ha, dvs.

 

- Programmet startar nu i osynligt läge

- Ikon (ser ut som en öppen mapp) visas i statusraden nere till höger.

- Högerklick på ikonen låter dig Starta/Stoppa bevakningen, öppna fönstret och avsluta programmet.

- Välj Öppna för att kunna ändra värdena, välj sedan Spara och efter det Göm för att gömma fönstret igen. (Har du ändrat några värden får du trycka Stoppa och sen Starta igen för att förändringarna skall användas)

- Ändrade värden sparas nu i en konfigurationsfil, med de värden du ville ha som startvärden.

- Värden läggs in i systemregistret så att programmet autostartas vid ombootning

- Programmet startar i bevakningsläge direkt.

 

Nu måste jag spendera resten av söndagen åt att jobba, så hoppas det fungerar.

 

http://c2.nordicplaza.com/Program/CheckFolder.exe

 

Länk till kommentar
Dela på andra webbplatser

Tack så jättemycket. Efter lite trixande har jag nu fått allt att fungera.

 

Det du skriver om att "Värden läggs in i systemregistret så att programmet autostartas vid ombootning" fick det hela att krångla till sig.

Första gången startar jag ju checkfolder i min mapp c:\mailskapare. Där i har jag min bat-fil samt lite andra progra som startas av bat-filen. Efter omstart av datorn verkar det som om checkfolder startas någon annanstans typ c:\dokuments and settings... och däri ligger inte mina program som bat-filen vill starta så de strejkade att sättas igång. Men efter att ha flyttat runt lite på mina programmen så funkar det nu.

Tack så otroligt mycket.

 

Till sist bara...

Om man inte längre vill att programmet ska autostarta, vilka filer i systemregistret ska då tas bort och var ligger de?

Har du skrivit detta i VB?

Är det möjligt att få källkoden?

Om så, skicka till harriet63post@hotmail.com

 

 

Tack igen. Du är bäst!!!

 

Länk till kommentar
Dela på andra webbplatser

Anjuna Moon

Hej, kul att det fungerade som du ville ha det, även om det var lite snabbt ihopslängt.

 

Om man inte längre vill att programmet ska autostarta, vilka filer i systemregistret ska då tas bort och var ligger de?

Antingen går du själv in i registret med regedit.exe från Start->Kör. Det är värdet CheckFolder i följande mapp som skall raderas:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

 

Om du inte är van att använda registret direkt så undvik det och kör istället msconfig från Start->Kör, välj fliken Startup och avmarkera posten CheckFolder.

 

 

Efter omstart av datorn verkar det som om checkfolder startas någon annanstans typ c:\dokuments and settings

Märkligt. Det är inte så att du när du laddade ner exe-filen råkade välja Kör istället för Spara, så att den körde filen från någon temp-mapp istället? Hursomhelst skall registervärdet ändras varje gång du kör programmet så att det uppdateras beroende på var programmet ligger.

 

Har du skrivit detta i VB?Är det möjligt att få källkoden?

Skrivet i VB.Net 2005 och jag har packat ihop källkoden här:

http://c2.nordicplaza.com/Program/CheckFolder.rar

 

Länk till kommentar
Dela på andra webbplatser

Vet du om man kan skapa en skrivare som både skriver till en verklig skrivare och samtidigt till en port/fil på datorn?

 

Eller om du kan tillföra någon funktion till CheckFolder att när fil finns i mappen så skriv till en windowsskrivare.

 

Tack på förhand

 

 

Länk till kommentar
Dela på andra webbplatser

Mr Andersson
som bevakar en viss mapp

 

Jag är lite nyfiken på hur man smidigast gör det, förutom att ha en timer som kollar efter förändringar i mappen med jämna mellanrum. I Delphi har jag försökt göra det med en hook på filsystemet men finns det nån enklare funktion i .net?

 

 

 

Länk till kommentar
Dela på andra webbplatser

Kolla programmet som Anjuna Moon skrev till mig. Där kollas en mapp och en batfil körs då en fil med viss filändelse lagts till i mappen

 

Länk till kommentar
Dela på andra webbplatser

Mr Andersson

Ja, så långt är jag med, men det jag var nyfiken på var hur man gör mappövervakningen i .net-programmering.

 

 

 

Länk till kommentar
Dela på andra webbplatser

Anjuna Moon
Ja, så långt är jag med, men det jag var nyfiken på var hur man gör mappövervakningen i .net-programmering.

Jag har länkat till källkoden också. Det du använder dig av är klassen System.Io.FileSystemWatcher, som du efter instantiering anger bevakningsparametrar för och sedan startar. Därefter har den en event-handler som triggas efter de kriterier du valt, ex. när en fil editeras eller fller läggs till i en mapp.

http://msdn2.microsoft.com/en-us/library/system.io.filesystemwatcher.aspx

 

Länk till kommentar
Dela på andra webbplatser

Mr Andersson
Jag har länkat till källkoden också

 

Läste för slarvigt. Sorry.

 

Det du använder dig av är klassen System.Io.FileSystemWatcher,

 

Klockrent! Tack!

 

 

 

Länk till kommentar
Dela på andra webbplatser

  • 6 months later...

Hej igen Anjuna Moon.

Jag har använt programmet checkfolder, som du gjorde, ganska flitigt. Det har varit till mycket bra användning. Jag har en undran om detta program kan göras win 98 kompatibelt. Tack på förhand.

 

[inlägget ändrat 2007-11-24 13:15:28 av Harriet63]

Länk till kommentar
Dela på andra webbplatser

Hej igen Anjuna Moon.

Jag har använt programmet checkfolder, som du gjorde, ganska flitigt. Det har varit till mycket bra användning. Jag har en undran om detta program kan göras win 98 kompatibelt. Tack på förhand.

 

Länk till kommentar
Dela på andra webbplatser

Du måste i så fall installera .net-framework 2.0. Jag är dock osäker på om det går att installera på w98.

 

Gå in på http://www.microsoft.com och sök på "framework 2.0 download", och försök hitta något som passar för win 98. Möjligtvis behöver du även Framework 1.1, samma procedur.

 

 

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...