_spawnv
, _wspawnv
Yeni bir işlem oluşturur ve yürütür.
Önemli
Bu API, Windows Çalışma Zamanı yürütülen uygulamalarda kullanılamaz. Daha fazla bilgi için bkz. Evrensel Windows Platformu uygulamalarında desteklenmeyen CRT işlevleri.
Sözdizimi
intptr_t _spawnv(
int mode,
const char *cmdname,
const char *const *argv
);
intptr_t _wspawnv(
int mode,
const wchar_t *cmdname,
const wchar_t *const *argv
);
Parametreler
mode
Çağırma işlemi için yürütme modu.
cmdname
Yürütülecek dosyanın yolu.
argv
Bağımsız değişkenlere yönelik işaretçi dizisi. Bağımsız değişken argv[0]
genellikle gerçek modda veya korumalı modda program adına yönelik bir işaretçidir ve argv[1]
aracılığıyla argv[n]
yeni bağımsız değişken listesini oluşturan karakter dizelerinin işaretçileridir. Bağımsız değişken, bağımsız değişken argv[n+1]
listesinin sonunu işaretlemek için bir NULL
işaretçi olmalıdır.
Dönüş değeri
Zaman uyumlu _spawnv
veya _wspawnv
(_P_WAIT
için mode
belirtilen) dönüş değeri, yeni işlemin çıkış durumudur. Zaman uyumsuz _spawnv
veya _wspawnv
(_P_NOWAIT
veya _P_NOWAITO
için mode
belirtilen) değerinden döndürülen değer, işlem tutamacıdır. İşlem normal şekilde sonlandırıldıysa çıkış durumu 0 olur. Oluşturulan işlem özel olarak sıfır olmayan bağımsız değişkenle yordamı çağırıyorsa exit
çıkış durumunu sıfır olmayan bir değere ayarlayabilirsiniz. Yeni işlem açıkça pozitif çıkış durumu ayarlamadıysa, pozitif çıkış durumu durdurma veya kesme ile anormal bir çıkış olduğunu gösterir. -1 dönüş değeri bir hatayı gösterir (yeni işlem başlatılmaz). Bu durumda, errno
aşağıdaki değerlerden birine ayarlanır.
Value | Açıklama |
---|---|
E2BIG |
Bağımsız değişken listesi 1024 baytı aşıyor. |
EINVAL |
mode bağımsız değişkeni geçersiz. |
ENOENT |
Dosya veya yol bulunamadı. |
ENOEXEC |
Belirtilen dosya yürütülebilir değil veya geçersiz yürütülebilir dosya biçimine sahip. |
ENOMEM |
Yeni işlemi yürütmek için yeterli bellek yok. |
Bunlar ve diğer iade kodları hakkında daha fazla bilgi için bkz. errno
, _doserrno
, _sys_errlist
ve _sys_nerr
.
Açıklamalar
Bu işlevlerin her biri, komut satırı bağımsız değişkenlerine bir işaretçi dizisi geçirerek yeni bir işlem oluşturur ve yürütür.
Bu işlevler parametrelerini doğrular. Ya da cmdname
argv
null işaretçiyse ya da null işaretçiyi işaret ederse argv
ya da argv[0]
boş bir dizeyse, Parametre doğrulama bölümünde açıklandığı gibi geçersiz parametre işleyicisi çağrılır. Yürütmenin devam etmesi için izin verilirse, bu işlevler olarak EINVAL
ayarlanır errno
ve -1 döndürür. Yeni bir işlem oluşturulmaz.
Varsayılan olarak, bu işlevin genel durumunun kapsamı uygulama olarak belirlenmiştir. Bu davranışı değiştirmek için bkz. CRT'de Genel durum.
Gereksinimler
Yordam | Gerekli başlık |
---|---|
_spawnv |
<stdio.h> veya <process.h> |
_wspawnv |
<stdio.h> veya <wchar.h> |
Daha fazla uyumluluk bilgisi için bkz . Uyumluluk.
Örnek
içindeki örne _spawn
bakın. _wspawn
İşlevler.
Ayrıca bkz.
İşlem ve ortam denetimi
_spawn
, _wspawn
işlevler
abort
atexit
_exec
, _wexec
işlevler
exit
, _Exit
, _exit
_flushall
_getmbcp
_onexit
, _onexit_m
_setmbcp
system
, _wsystem