2012-05-03 21 views
13

Programın ortam değişkenlerini almak için GetEnvironmentString() kullanıyorum.Bu garip ortam değişkenleri nelerdir?

=::=::\ 

Bilmiyorum ne anlama geliyor:

Her program ilk böyle bir sonuç var?

LPWCH lpEnvString=GetEnvironmentStringsW(); 
LPWSTR lpszVariable=(LPWSTR)lpEnvString; 
while (*lpszVariable) 
{ 
    wprintf(L"%s\n",lpszVariable); 
    lpszVariable+=wcslen(lpszVariable)+1; 
} 
FreeEnvironmentStringsW(lpEnvString); 
Ayrıca

biz gibi şeyler görecekti tür değişkenleri listeleme başlıyorsa:: Öte yandan

=::=::\ 
=C:=C:\Users\username\value 
=ExitCode=00000001 
ALLUSERSPROFILE=C:\ProgramData 
APPDATA=C:\Users\artik\AppData\Roaming 
CommonProgramFiles=C:\Program Files (x86)\Common Files 
CommonProgramFiles(x86)=C:\Program Files (x86)\Common Files 
CommonProgramW6432=C:\Program Files\Common Files 
... 

, getenv("=ExitCode") veya getenv("=C:") döner NULL İşte

kodudur.

Bu "özellik", için uygun bir belgeleme sağlayabilir getenv()getenv(), bu tür dizeleri yok sayar ve bu tür değerleri nasıl ele alınmalıdır?

+1

Bize kodu göster. – Nick

+2

@Nick Yapmanız gereken tek şey, 'GetEnvironmentStrings() ' –

+0

' dır. Sanırım sağlanan dizeyi elde etmek için ne yaptığını kontrol etmek istedim. Ayrıca - Windows PC'im var sanıyorum :) – Nick

cevap

8

Bunlar, msd dos dizin işlemlerini taklit eden cmd.exe dosyasında kalanlar, temelde çok az kullanım alanı vardır ve her şeyden daha arkaiktir. Aslında, bir sürücü güncel dizini izler ve diğer süreçlere kolaylıkla geçmek için bir ortam değişkeni olarak tutulur.

+0

Soru, örneğin getenv'nin bunları nasıl ele alması gerektiğini belgelemek için daha fazlasıdır. Gerekli olan dokümanlar için işaretçiler. – Artyom

+2

@Artyom, paket servisi olan paketin, = = 'ile başlayan ve kasıtlı olarak belgesel olmayan ve göz ardı edilmesi gereken bir şey olduğunu düşünüyorum. –

+0

@MarkRansom problemi, bu dizelerin GetEnvironmentStrings listesinde göründüğü ve böyle bir davranışın, bunların nasıl ele alınacağı konusunda net olmayan bir belgesiz gibi göründüğü – Artyom

İlgili konular