Newsgroup: it.comp.programmare.win32
Titolo: Problemi con Advapi32.lib

Ciao a tutti,sto' tentando di usare la funzione:
CreateProcessWithLogonW(),includo Windows.h,Winbase.h, metto la libreria
Advapi32.lib fra quelle da linkare ma mi ritrovo questo messaggio d'errore
del Visual C++6.0:
error C2065: 'CreateProcessWithLogonW' : undeclared identifier
....mi sapreste per favore dire perche'??
Grazie.
-- 
Posted from 
sfw.lib.disco.unimib.it
 [149.132.196.251] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 CreateProcessWithLogonW()
Che funzione sarebbe? Nella mia documentazione non esiste, su MSDN non
esiste, ti credo che il compilatore non te la riconosce!
Forse è una funzione presente in qualche DLL di sistema ma che non è
documentata. In questo caso devi fare il lavoro "a mano" ottenendo un
puntatore ad essa tramite GetProcAddress() dopo aver caricato la DLL con
LoadLibrary(). Ma in quale libreria? Tu dici advapi32.dll, ma (almeno sotto
Win98/ME) in questa libreria non si trova nessuna funzione con quel nome...
    Marco

 via Mailgate.ORG Server - 
http://www.Mailgate.ORG
1 - Winbase.h e' superfluo (viene incluso da Windows.h)
2 - Sei sicuro di essere dentro le specifiche?
Requirements
  Windows NT/2000: Requires Windows 2000.
  Windows 95/98: Unsupported.
  Header: Declared in Winbase.h; include Windows.h.
  Library: Use Advapi32.lib.
  Unicode: Implemented only as Unicode.
Winbase.h dagli include Microsoft PSDK July 2000 Edition:
[cut]
#if(_WIN32_WINNT >= 0x0500)
//
// LogonFlags
//
#define LOGON_WITH_PROFILE              0x00000001
#define LOGON_NETCREDENTIALS_ONLY       0x00000002
WINADVAPI
BOOL
WINAPI
CreateProcessWithLogonW(
      LPCWSTR lpUsername,
      LPCWSTR lpDomain,
      LPCWSTR lpPassword,
      DWORD   dwLogonFlags,
      LPCWSTR lpApplicationName,
      LPWSTR lpCommandLine,
      DWORD dwCreationFlags,
      LPVOID lpEnvironment,
      LPCWSTR lpCurrentDirectory,
      LPSTARTUPINFOW lpStartupInfo,
      LPPROCESS_INFORMATION lpProcessInformation
      );
#endif // (_WIN32_WINNT >= 0x0500)
[cut]

 esiste, ti credo che il compilatore non te la riconosce!
Ho appreso da questo stesso thread che la funzione è stata introdotta in
Windows 2000, ecco perché nella mia documentazione non c'era... ;-)
    Marco

....mi sapreste per favore dire perche'??
la W finale indica che la funzione e' UNICODE quindi per poterla usare
devi compilare iltuo progetto i UNICODE, oltre ad essere su Win2K.
ciauz
Vincenzo 'lo sciamano'   Bologna (ITALIA-ITALY)
Homepage  
http://www.geocities.com/vincesalsero/
Membro Fondatore del CSM (Club Seghe Mentali)
http://www.freeweb.org/free/csm

 devi compilare iltuo progetto i UNICODE, oltre ad essere su Win2K.
ciao
mi hai fatto venire un dubbio...
io nei miei programmi scrivo sempre:
#define UNICODE
TCHAR szMyString = TEXT("questa è una stringa");
QualcheAPIcheRiceveStringhe( TEXT("bla bla bla") );
uso windows 2000
i programmi che compilo girano bene, ma su win9x/ME/NT4 gireranno uguale?
--
ciao
..::[xaero]::..

i programmi che compilo girano bene, ma su win9x/ME/NT4 gireranno uguale?
direi di no, o meglio, su NT direi di si', su ME non lo so, ma penso
di si', su Win9X direi di no.




1 - Winbase.h e' superfluo (viene incluso da Windows.h)
2 - Sei sicuro 
di essere dentro le specifiche?
Requirements
  Windows NT/2000: 
Requires Windows 2000.
  Windows 95/98: Unsupported.
  Header: 
Declared in Winbase.h; include Windows.h.
  Library: Use 
Advapi32.lib.
  Unicode: Implemented only as Unicode.


Si,ho seguito le specifiche.......e programmo sotto 
Win2k.


Ciao






Allora non ti resta che scaricare il Platform SDK aggiornato.
Nella distribuzione originale di Visual C++ 6.0 la funzione
CreateProcessWithLogonW() non e' presente in Winbase.h! ;)
Vai a questo link:
http://msdn.microsoft.com/library/default.asp?URL=/library/psdk/portals/main
port.htm
Ciao,
Il Michett@
--