Jump to content
GSForum - Segélyvonal

Batch fájlban lehet?


tomac

Recommended Posts

tomac

Sziasztok!

 

Az alábbi dologban kérem segíségeteket:

 

Ha tudtok olyan programot batch fájlban vagy Pascalban, esetleg Delphiben, amivel a CD tálcát ki lehet nyitni és be is lehet húzni és mindezt megadott billentyûkombinációval, akkot kérlek írjátok meg nekem. Ugyanis az új gépházamban lévõ CD-ROM elõtti porvédõ ajtó miatt kellemetlen megtalálni a behívó gombot, ezért keresnék egy ügyes kis programot. Konkrétan egy ilyet találtam csak a víruskeresõm egybõl lestoppolta egy hozzáfûzõdõ vírus miatt, ami így használhatatlan.

 

Segítségeteklet elõre köszönöm!

Link to comment
Share on other sites

Calyd

Segít, ha adok Delphi-kódot ami ezt elvégzi?

Link to comment
Share on other sites

tomac

Az is jó lenne, megpróbálnám vele!

Link to comment
Share on other sites

TheSaurus

PowerPro.

Link to comment
Share on other sites

Calyd

Function EjectCD(Drive:Char):Boolean;
   Var Res:MciError;
       OpenParm:TMCI_Open_Parms;
       Flags:DWORD;
       S:String;
       DeviceID:Word;
   Begin
      Result:=False;
      S:=Drive+':';
      Flags:=MCI_OPEN_TYPE or MCI_OPEN_ELEMENT;
      With OpenParm do begin
         dwCallback:=0;
         lpstrDeviceType:='CDAudio';
         lpstrElementName:=PChar(S);
         end;
      Res:=mciSendCommand(0, MCI_OPEN, Flags, Longint(@OpenParm));
      If Res<>0 then Exit;
      DeviceID:=OpenParm.wDeviceID;
      Try
         Res:=mciSendCommand(DeviceID,MCI_SET,MCI_SET_DOOR_OPEN,0);
         If Res=0 then Exit;
         Result:=True;
      Finally
         mciSendCommand(DeviceID,MCI_CLOSE,Flags,Longint(@OpenParm));
         end;
   End;//EjectCD

Function CloseCD(Drive:Char):Boolean;
   Var Res: MciError;
       OpenParm:TMCI_Open_Parms;
       Flags:DWORD;
       S:String;
       DeviceID:Word;
   Begin
      Result:=False;
      S:=Drive+':';
      Flags:=MCI_OPEN_TYPE or MCI_OPEN_ELEMENT;
      With OpenParm do begin
         dwCallback:=0;
         lpstrDeviceType:='CDAudio';
         lpstrElementName:=PChar(S);
         end;
      Res:=mciSendCommand(0,MCI_OPEN,Flags,Longint(@OpenParm));
      If Res<> 0 then Exit;
      DeviceID:=OpenParm.wDeviceID;
      Try
         Res:=mciSendCommand(DeviceID,MCI_SET,MCI_SET_DOOR_CLOSED,0);
         If Res=0 then Exit;
         Result:=True;
      Finally
         mciSendCommand(DeviceID,MCI_CLOSE,Flags,Longint(@OpenParm));
         end;
   End;//CloseCD

 

Használni meg értelemszerűen kell :) Meghívod a függvényt a megfelelő meghajtó betűjelével. Ne kérdezd különösebben mi mit csinál :)

Link to comment
Share on other sites

tomac

Régebben egy kicsit tanították a Delphit, de úgy komolyan nem foglalkoztunk vele. Úgyhogy olyan szinten vagyok vele hogy találkoztunk. De így a programmal könnyebb lesz. Amint tudom kipróbálom , addig is köszi a segítséget! :)

Link to comment
Share on other sites

Calyd

Az eszközök vezérlést már én sem tudom benne, tehát ennek is utánanéztem csak. De tényleg csak másol-beilleszt, és valami gomb-klikkre vagy ilyesmire meghívod az függvényeket. Hopsz! A unitok közé vedd fel az "MMSystem" unitot :!:

Link to comment
Share on other sites

  • 1 year later...
puschkin

Hali mindenki a következõ feladat adott:

olyan batch file kéne nekem, ami lekéri a napi dátumot, majd egy adott file-t átnevez úgy, hogy a kiterjesztés elõtti része a napi dátum legyen pl.: proba.zip-bõl 20080320.zip-et csinál

 

köszi

Link to comment
Share on other sites

puschkin

Kösz, de ezzel nem vagyok beljebb. :( A következőt akarom megoldani: Írtam egy batch file-t ami ütemezetten minden nap este 8-kor lefuttat egy tömörítést, x mappákat betömörít egy zip állományba, és már csak annyi kéne, hogy az aktuális dátumot belevarázsolja a zip nevébe. Az a problémám, hogy a "date /t" parancs eredménye pl: 2008.03.20, ebből ki kéne szedni a pontokat, és valahogy hozzá kéne fűzni a file nevéhez, hogy az eredmény pl: mentes20080320.zip legyen.

 

A belinkelt oldal valamilyen exceles buherálást ír, de az ott szereplő angol parancsok nem tudom milyen néven vannak az én magyar excelemben, illetve az excel által használt ()-es paraméterezés sz@rt sem ér parancssorban?!

Link to comment
Share on other sites

szg

A következőt próbáld meg:

 

SET MENTESDATUM=%date:.=%
REN proba.zip mentes%MENTESDATUM%.zip

 

A fájlneveknél az általad megadottakat használtam.

Link to comment
Share on other sites

puschkin

Köszi szépen szg, mûködik. Neken ez korábban azért nem ment mert a set-nél a % helyett "-et használtam :fal:

 

Mégegyszer kösz :kocc::istenvagy::oké:

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...