Section courante

A propos

Section administrative du site

 Langage  Elément  Programmation  Compilateur  IDE  Annexe  Aide 
ABAP/4
Ada
Assembleur
Assembly & bytecode
ASP (Active Server Pages)
Basic
C
C++
C# (C Sharp)
Cobol
ColdFusion
Fortran
HTML
Java
JavaScript
LISP
Logo
LotusScript
Oberon
Pascal
Perl
PHP
PL/1
Prolog
Python
Rebol
REXX
Ruby
Rust
SAS
NoSQL
SQL
Swift
X++ (Axapta)
GNAT
SMALLAda
VHDL
Assembleur 370
Assembleur 1802
Assembleur 4004
Assembleur 6502
Assembleur 6800
Assembleur 68000
Assembleur 8080 et 8085
Assembleur 8089
Assembleur 80x86
Assembleur AGC4
Assembleur ARM
Assembleur DPS 8000
Assembleur i860
Assembleur Itanium
Assembleur MIPS
Assembleur PDP-11
Assembleur PowerPC
Assembleur RISC-V
Assembleur SPARC
Assembleur SuperH
Assembleur UNIVAC I
Assembleur VAX
Assembleur Z80
Assembleur Z8000
Assembleur z/Architecture
ASSEMBLER/MONITOR 64
Micol Assembler
GFA Assembler
A86
MASM (Macro Assembler)
TASM (Turbo Assembler)
CIL
Jasmin
LLVM
MSIL
Parrot
P-Code (PCode)
SWEET16
G-Pascal
ASP 1.0
ASP 2.0
ASP 3.0
ASP.NET
ASP.NET Core
ABasiC (Amiga)
Adam SmartBASIC
Altair BASIC
AmigaBASIC (Amiga)
AMOS Basic (Amiga)
Atari Basic (Atari 400, 600 XL, 800, 800XL)
Basic Apple II (Integer BASIC/APPLESOFT)
Basic Commodore 64 (CBM-BASIC)
Basic Commodore 128 (BASIC 7.0)
Basic Commodore VIC-20 (CBM-BASIC 2.0)
Basic Coco 1 (Color Basic)
Basic Coco 2 (Extended Color Basic)
Basic Coco 3 (Extended Color Basic 2.0)
BASICA (PC DOS)
Basic Pro
BBC BASIC
Blitz BASIC (Amiga)
DarkBASIC
Dartmouth BASIC
GFA-Basic (Atari ST/Amiga)
GWBASIC (MS-DOS)
Liberty BASIC
Locomotive BASIC (Amstrad CPC)
MSX-Basic
Omikron Basic (Atari ST)
Oric Extended Basic
Power Basic
Quick Basic/QBasic (MS-DOS)
Sinclair BASIC (ZX80, ZX81, ZX Spectrum)
ST BASIC (Atari ST)
Turbo Basic
Vintage BASIC
VBScript
Visual Basic (VB)
Visual Basic .NET (VB .NET)
Visual Basic pour DOS
Yabasic
BeckerBASIC
SIMONS' BASIC
Basic09 d'OS-9
Disk Extended Color Basic
Basic09 d'OS-9
Disk Extended Color Basic
Access
Excel
Visual Basic pour Windows
Visual Basic .NET pour Windows
C Shell Unix (csh)
C pour Amiga
C pour Atari ST
C pour DOS
C pour Falcon030
C pour GEMDOS (Atari ST)
C pour Linux
C pour PowerTV OS
C pour OS/2
C pour Unix
C pour Windows
Aztec C
CoCo-C
GNU C
HiSoft C
IBM C/2
Introl-C
Lattice C
Microsoft C
MinGW C
MSX-C
Open Watcom C
OS-9 C Compiler
Pure C
Quick C
Turbo C
HiSoft C for Atari ST
HiSoft C for CP/M (Amstrad CPC)
C++ pour OS/2
C++ pour Windows
Borland C++
C++Builder
IBM VisualAge C++
Intel C++
MinGW C++
Open Watcom C++
Symantec C++
Turbo C++
Visual C++
Visual C++ .NET
Watcom C++
Zortech C++
C# (C Sharp) pour Windows
Apple III Cobol
Microsoft Cobol
BlueDragon
Lucee
OpenBD
Railo
Smith Project
Microsoft Fortran
WATFOR-77
CSS
FBML
Open Graph
SVG
XML
XSL/XSLT
LESS
SASS
GCJ (GNU)
JSP
Jython
Visual J++
Node.js
TypeScript
AutoLISP
ACSLogo
LotusScript pour Windows
Amiga Oberon
Oberon .NET
Apple Pascal
Delphi/Kylix/Lazarus
Free Pascal
GNU Pascal
HighSpeed Pascal
IBM Personal Computer Pascal
Lisa Pascal
Maxon Pascal
MPW Pascal
OS-9 Pascal
OSS Personal Pascal
Pascal-86
Pascal du Cray Research
Pascal/VS
Pascal-XT
PURE Pascal
QuickPascal
RemObjets Chrome
Sun Pascal
THINK Pascal
Tiny Pascal (TRS-80)
Turbo Pascal
UCSD Pascal
VAX Pascal
Virtual Pascal
Turbo Pascal for CP/M-80
Turbo Pascal for DOS
Turbo Pascal for Macintosh
Turbo Pascal for Windows
CodeIgniter (Cadre d'application)
Drupal (Projet)
Joomla! (Projet)
Phalanger (PHP .NET)
phpBB (Projet)
Smarty (balise)
Twig (balise)
Symfony (Cadre d'application)
WordPress (Projet)
Zend (Cadre d'application)
PL360
PL/M-80
PL/M-86
Turbo Prolog
CPython
IronPython
Jython
PyPy
AREXX
Regina REXX
JMP
Btrieve
Cassandra
Clipper
CouchDB
dBASE
Hbase
Hypertable
MongoDB
Redis
Access
BigQuery
DB2
H2
Interbase
MySQL
Oracle
PostgreSQL
SAP HANA
SQL Server
Sybase
U-SQL
Type de données
EXE, DLL et modules pour OS/2
API pour OS/2
DOSCALLS.DLL
FKA.DLL
KBDCALLS.DLL
PMGPI.DLL
PMMERGE.DLL
PMSHAPI.DLL
PMWIN.DLL
QUECALLS.DLL
SESMGR.DLL
VIOCALLS.DLL
Géométrie
Treillis
IBM C/2
IBM VisualAge C++
Lattice C
Open Watcom C/C++
Borland C++ for OS/2 Version 1.0
Codes d'erreurs
Bibliographie
Préface
Notes légal
Dictionnaire
Recherche

DosQuerySysInfo

DOS : Requête d'information système
DOSCALLS.DLL os2.h

Syntaxe

APIRET DosQuerySysInfo( ULONG ulStartIndex, ULONG ulLastIndex, PVOID pDataBuffer, LONG ulDataBufferLength );

Paramètres

Nom Description
ulStartIndex Ce paramètre permet d'indiquer l'index du premier information de requête. Les valeurs d'index valides pour se paramètre sont :
Valeur d'index Nom Description Version
1 QSV_MAX_PATH_LENGTH Cette valeur permet d'indiquer la longueur maximal du nom d'un chemin en octets. Utilisé lorsqu'il y a une allocation d'un tampon de nom de fichiers. Tous
2 QSV_MAX_TEXT_SESSIONS Cette valeur permet d'indiquer le nombre maximal de sessions texte. Tous
3 QSV_MAX_PM_SESSIONS Cette valeur permet d'indiquer le nombre maximal de sessions avec le gestionnaire de présentation. Tous
4 QSV_MAX_VDM_SESSIONS Cette valeur permet d'indiquer le nombre maximal de sessions DOS. Tous
5 QSV_BOOT_DRIVE Cette valeur permet d'indiquer l'unité de démarrage : 1 = A, 2 = B, 3 = C, 4 = D,... Tous
6 QSV_DYN_PRI_VARIATION Cette valeur permet d'indiquer le type de priorité : 0 = absolue, 1 = dynamique. Tous
7 QSV_MAX_WAIT Cette valeur permet d'indiquer le délai maximal d'attente en secondes. Tous
8 QSV_MIN_SLICE Cette valeur permet d'indiquer la tranche de temps minimum alloué en milliseconde. Tous
9 QSV_MAX_SLICE Cette valeur permet d'indiquer la tranche de temps maximum alloué en milliseconde. Tous
10 QSV_PAGE_SIZE Cette valeur permet d'indiquer la taille de page mémoire en octets. La valeur par défaut est 4096 octets. Tous
11 QSV_VERSION_MAJOR Cette valeur permet d'indiquer le numéro de version majeur. Tous
12 QSV_VERSION_MINOR Cette valeur permet d'indiquer le numéro de version mineur. Tous
13 QSV_VERSION_REVISION Cette valeur permet d'indiquer la lettre de révision. Tous
14 QSV_MS_COUNT Cette valeur permet d'indiquer la valeur d'un compteur de millisecondes en 32 bits. Il vaut 0 lors de démarrage du système d'exploitation. Tous
15 QSV_TIME_LOW Cette valeur permet d'indiquer la partie basse 32 bits du temps en seconde depuis le 1er janvier 1980. Tous
16 QSV_TIME_HIGH Cette valeur permet d'indiquer la partie haute 32 bits du temps en seconde depuis le 1er janvier 1980. Tous
17 QSV_TOTPHYSMEM Cette valeur permet d'indiquer le nombre total d'octets dans la mémoire physique. Tous
18 QSV_TOTRESMEM Cette valeur permet d'indiquer le nombre total d'octets dans la mémoire résidente du système d'exploitation. Tous
19 QSV_TOTAVAILMEM Cette valeur permet d'indiquer le nombre maximum d'octets de disponible pour tous les processus dans le système maintenant. Tous
20 QSV_MAXPRMEM Cette valeur permet d'indiquer le nombre maximum d'octets de disponible pour ce processus maintenant. Tous
21 QSV_MAXSHMEM Cette valeur permet d'indiquer le nombre d'octets partagé de disponible maintenant. Tous
22 QSV_TIMER_INTERVAL Cette valeur permet d'indiquer l'intervalle de la minuterie en 1/10 millisecondes. Tous
23 QSV_MAX_COMP_LENGTH Cette valeur permet d'indiquer la longueur maximal d'une composante dans un chemin de fichier en octets. Tous
24 QSV_FOREGROUND_FS_SESSION Cette valeur permet d'indiquer l'identificateur de session de la session plein écran de premier plan. N'importe quel session de gestionnaire de présentation, VIO ou Win-DOS doit avoir un identificateur = 1. OS/2 Warp
25 QSV_FOREGROUND_PROCESS Cette valeur permet d'indiquer l'identificateur de processus du processus courant de premier plan. OS/2 Warp
26 QSV_NUMPROCESSORS Cette valeur permet d'indiquer le nombre de microprocesseur que possède cette ordinateur. OS/2 Warp
ulLastIndex Ce paramètre permet d'indiquer l'index du dernière information de requête. Ce paramètre est égale à ulStartIndex pour indiquer une seule information de valeur d'index. Les valeurs d'index valides pour se paramètre sont :
Valeur d'index Nom Description Version
1 QSV_MAX_PATH_LENGTH Cette valeur permet d'indiquer la longueur maximal du nom d'un chemin en octets. Utilisé lorsqu'il y a une allocation d'un tampon de nom de fichiers. Tous
2 QSV_MAX_TEXT_SESSIONS Cette valeur permet d'indiquer le nombre maximal de sessions texte. Tous
3 QSV_MAX_PM_SESSIONS Cette valeur permet d'indiquer le nombre maximal de sessions avec le gestionnaire de présentation. Tous
4 QSV_MAX_VDM_SESSIONS Cette valeur permet d'indiquer le nombre maximal de sessions DOS. Tous
5 QSV_BOOT_DRIVE Cette valeur permet d'indiquer l'unité de démarrage : 1 = A, 2 = B, 3 = C, 4 = D,... Tous
6 QSV_DYN_PRI_VARIATION Cette valeur permet d'indiquer le type de priorité : 0 = absolue, 1 = dynamique. Tous
7 QSV_MAX_WAIT Cette valeur permet d'indiquer le délai maximal d'attente en secondes. Tous
8 QSV_MIN_SLICE Cette valeur permet d'indiquer la tranche de temps minimum alloué en milliseconde. Tous
9 QSV_MAX_SLICE Cette valeur permet d'indiquer la tranche de temps maximum alloué en milliseconde. Tous
10 QSV_PAGE_SIZE Cette valeur permet d'indiquer la taille de page mémoire en octets. La valeur par défaut est 4096 octets. Tous
11 QSV_VERSION_MAJOR Cette valeur permet d'indiquer le numéro de version majeur. Tous
12 QSV_VERSION_MINOR Cette valeur permet d'indiquer le numéro de version mineur. Tous
13 QSV_VERSION_REVISION Cette valeur permet d'indiquer la lettre de révision. Tous
14 QSV_MS_COUNT Cette valeur permet d'indiquer la valeur d'un compteur de millisecondes en 32 bits. Il vaut 0 lors de démarrage du système d'exploitation. Tous
15 QSV_TIME_LOW Cette valeur permet d'indiquer la partie basse 32 bits du temps en seconde depuis le 1er janvier 1980. Tous
16 QSV_TIME_HIGH Cette valeur permet d'indiquer la partie haute 32 bits du temps en seconde depuis le 1er janvier 1980. Tous
17 QSV_TOTPHYSMEM Cette valeur permet d'indiquer le nombre total d'octets dans la mémoire physique. Tous
18 QSV_TOTRESMEM Cette valeur permet d'indiquer le nombre total d'octets dans la mémoire résidente du système d'exploitation. Tous
19 QSV_TOTAVAILMEM Cette valeur permet d'indiquer le nombre maximum d'octets de disponible pour tous les processus dans le système maintenant. Tous
20 QSV_MAXPRMEM Cette valeur permet d'indiquer le nombre maximum d'octets de disponible pour ce processus maintenant. Tous
21 QSV_MAXSHMEM Cette valeur permet d'indiquer le nombre d'octets partagé de disponible maintenant. Tous
22 QSV_TIMER_INTERVAL Cette valeur permet d'indiquer l'intervalle de la minuterie en 1/10 millisecondes. Tous
23 QSV_MAX_COMP_LENGTH Cette valeur permet d'indiquer la longueur maximal d'une composante dans un chemin de fichier en octets. Tous
24 QSV_FOREGROUND_FS_SESSION Cette valeur permet d'indiquer l'identificateur de session de la session plein écran de premier plan. N'importe quel session de gestionnaire de présentation, VIO ou Win-DOS doit avoir un identificateur = 1. OS/2 Warp
25 QSV_FOREGROUND_PROCESS Cette valeur permet d'indiquer l'identificateur de processus du processus courant de premier plan. OS/2 Warp
26 QSV_NUMPROCESSORS Cette valeur permet d'indiquer le nombre de microprocesseur que possède cette ordinateur. OS/2 Warp
pDataBuffer Ce paramètre permet d'indiquer l'adresse d'un tampon de données dans lequel il faut mettre les informations.
ulDataBufferLength Ce paramètre permet d'indiquer la taille du paramètre pDataBuffer.

Retour

Valeur Constante Description
0 NO_ERROR Cette valeur permet d'indiquer que l'opération s'est correctement effectué
87 ERROR_INVALID_PARAMETER Cette valeur permet d'indiquer qu'un ou plusieurs des paramètres contient une valeur illégale.
111 ERROR_BUFFER_OVERFLOW Cette valeur permet d'indiquer qu'un débordement du tampon s'est produit.

Description

Cette fonction permet d'envoyer un requête de différentes informations à propos du système et retourne le contenu dans un tampon après l'appel.

Exemple

Voici un simple exemple montrant comme appeler cette API avec WatCom C++ for OS/2 :

  1. #define INCL_DOSERRORS
  2. #define INCL_DOSMISC
  3. #include "os2.h"
  4. #include "stdio.h"
  5.  
  6. void main(void) {
  7.     ULONG buffer[3];
  8.     switch(DosQuerySysInfo(QSV_VERSION_MAJOR, QSV_VERSION_REVISION, (void *)buffer, sizeof(buffer))) {
  9.         case NO_ERROR: printf("Version %d.%d révision %c.\n", buffer[0], buffer[1], (char) buffer[2]);break;
  10.         case ERROR_INVALID_PARAMETER: printf("Erreur : Un ou plusieurs des paramètres contient une valeur illégale.");break;
  11.         case ERROR_BUFFER_OVERFLOW: printf("Erreur : Un débordement du tampon s'est produit.");break;
  12.     }
  13. }

Voir également

Système d'exploitation - OS/2 - Introduction

PARTAGER CETTE PAGE SUR
Dernière mise à jour : Lundi, le 19 juillet 2010