c:\> konumundayken bunu yazınca doğru sonucu alıyorum
Mp4Box.exe -inter 500 "G:\\habervideo\\19.10.2012\\SOKAK.mp4"
Php ile exe çalıştırmak istiyorum
13
●2.786
- 29-10-2012, 22:30:29bu kodu bir bat dosyası içine kaydet, ve exec('c:\xxx.bat'); şeklinde php ile çalıştır.create adlı üyeden alıntı: mesajı görüntüle
Çalışmıyorsa php "o klasörde" ya da "o programla" o işlemi yapmak için yetkili değildir. - 29-10-2012, 22:57:57hocam şimdi
deneme.bat açtım c: içine ve içeriğine şunu yazdım oldu.
birtanede işlem dosyası yaptım onunda adı ve işlemi şu şekildeAlıntı
islemyap.php
fakat sormak istediğim birşey var buradaki tarih ve video adı stabil değil dinamik olucak bu durumda ne yapmam lazım.Alıntı - 29-10-2012, 23:14:54eğer bu çözümse sizin için, dinamik bat dosyaları ile işinizi görürsünüz ardından dosya silme komutları ile .bat dosyasını siler yığıntı oluşmasını engellersiniz.
dinamik .bat dosyası oluşturmak ile .txt dosyaya log yazmak arasında fark yoktur, sadece uzantısı ve içeriği değişiyor.
@echo OFF C: Mp4.exe ...... dosya.mp4
böyle bir .bat dosyası yaparsanız sanırım en baştaki echo OFF ile siyah ekran açılmasını engelliyordu, öyle hatırlıyorum.
--
Diğer türlü düşünürsek; mademki php yetkili bu klasörde öyleyse kod zaman aşımına uğruyor diyebilirim.
ini_set('max_execution_time', 0);exec yerine echo deneyerek ekrana ne bastığına bakabilirsiniz, acaba doğru kodu mu gösteriyor? \ " karakterleri kod içinde sıkıntı çıkartabilir.
http://www.php.net/manual/en/function.exec.php
http://www.php.net/manual/en/functio...peshellcmd.php
http://www.php.net/manual/en/functio...peshellarg.php - 30-10-2012, 01:34:26Kimlik doğrulama veya yönetimden onay bekliyor.arkadaşım basitçe get veya post ile parametre gönderip önce içeriği değiştirir sonra çalıştırabilirsin. Misal
<?php if(isset($_GET['dosya']) && !empty($_GET['tarih'])){ $yaz = fopen('c:\deneme.bat','w'); $komut = 'Mp4Box.exe -inter 500 "G:\\habervideo\\'.$_GET['tarih'].'\\'.$_GET['dosya'].'"'; fwrite($yaz,$komut); fclose($yaz); sleep(1); exec('C:\\deneme.bat'); } ?>gibi.