home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 32 Periodic
/
32-Periodic.zip
/
revue1b.zip
/
REVUE1B.INF
(
.txt
)
< prev
next >
Wrap
OS/2 Help File
|
1993-12-18
|
195KB
|
1,006 lines
ΓòÉΓòÉΓòÉ 1. ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ 2. ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ 3.
ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ 4. ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ 5. ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ 6. ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ 7. ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ 8. ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ 9. ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ 9.1. ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ 9.2. ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
Cette section donne le rВsumВ en franЗais des deux sections en anglais "Demand
grows in wake of NT debut et "IBM apps fuel renewed OS/2 interest". Consulter
les pour la version intВgrale.
Les ventes de OS/2 2.x passent le cap du 4 millions de copies Il semble que
l'acceptation de OS/2 par les grandes compagnies en soit la cause. Par contre
le support par les principales compagnies qui vendent (et produisent) des
logiciels est plus mitigВ. On n'a qu'Е penser Е la dВcision de WordPerfect
d'arrИter le dВveloppement de leurs produits pour la plateforme OS/2. Les
rumeurs laissent entendre que la dВcision de WordPerfect vient du fait que IBM
a dВcidВ de mettre en marchВ, via son service de ventes, SmartSuite pour OS/2
de Lotus Development Corp.
Il n'est pas clair si l'augmentation des ventes va modifier l'opinion des
developpeurs de logiciel. "C'est amusant, mais aprКs que les consommateurs ont
eu le temps d'Вvaluer Windows NT, on a vu une lВgКre augmentation des ventes
pour les applications OS/2" disait Tom Eid de Spinnaker Software Corp.
Selon certaines sources chez IBM, environ un million de copies de OS/2 version
2.1 auraient ВtВ vendues depuis la fin de septembre. On croit que la mise en
marchВ de OS/2 pour Windows provoquera un tabac au niveau des ventes de systКme
d'exploitation de la compagnie pour 1994. Plus de cinq millions de copies de
toutes les versions (1.x et 2.x) ont ВtВ vendues Е date. IBM se refuse Е
confirmer ces chiffres.
David Watkins, vice-prВsident de la mise en marchВ chez Borland International
dit que l'augmentation des ventes est Вvidente et vient surtout du cУtВ des
serveurs. Steve Ballmer, vice-prВsident des ventes chez Microsoft conteste
l'Вvaluation des ventes affirmant que le dВveloppement d'applications pour OS/2
est mort et enterrВ ("dead, stone-cold dead"). Wally Casey, directeur de la
mise en marchВ pour Personnal Software Products affirme que la compagnie a reЗu
quatre fois plus de commandes pour OS/2 pour Windows le premier jour que pour
OS/2 2.1 en mars dernier.
Dans la lancВe du renouveau d'intВrИt pour OS/2 aussi bien chez ses clients que
chez les dВveloppeurs, IBM a prВsentВ derniКrement une version prВ-bИta de
Workplace DOS qui apporte certaines des capacitВs de glisser-tomber (drag &
drop) de OS/2 vers des appareils ne supportant pas le 32 bits. L'objectif de
IBM avec ce
ΓòÉΓòÉΓòÉ <hidden> " ΓòÉΓòÉΓòÉ
OS/2 2.X SALES SOAR PAST 4 MILLION, IBM WOOS DEVELOPERS
With a surge in acceptance of OS/2 by corporate customers in the past two
months, IBM Corp.'s PSP division has now sold more than 4 million copies of
OS/2 2.x.
But the company has been getting mixed support messages from software
developers. Last week, several key vendors, including Oracle Corp. and Uniface
Crop. discussed new OS/2 products or initiatives.
At the same time, OS/2 support from many mainstream vendors remains dismal.
Last week, Word Perfect Corp. said it would stop, at least for now,
client-based OS/2 applicantions development. The move was fueled, some siad, by
IBM's decision to market Lotus Development Corp.'s SmartSuite for OS/2 to IBM
customers and resellers.
Whether growing sales can alter software developers' opinions of OS/2 is
unknown. "It's funny, but after customers have taken the time to evaluate
Windows NT, we have seen a little uptick in OS/2 application sales," said Tom
Eid, product manager at Spinnaker Software Corp. "It's nothing dramatic and not
enough to take people off Windows product development, but it bears watching."
IBM has sold about 1 million copies of OS/2 2.1 alone since late September,
according to IBM sources, and the release of OS/2 for Windows is expected to
add dramatically to the company's sales figures for the operating system in
1994. With sales of OS/2 1.x included, the vendor has sold more than 5 million
copies of all versions of OS/2 to date, IBM sources said.
IBM executives declined to publically confimr the sales figures. John Patrick,
vice president of marketing for PSP, said he is not concerned numbers. "Big
customers are making purchases [of OS/2], and I care more about large customers
being committed to OS/2," he said.
David Watkins, vice president of product marketing for Borland International
Inc. said the increase in sales have been obvious and the boom has come
primarily from the server side.
Steve Ballmer, executive vice president of worldwide sales and marketing for
Microsoft Corp. disputed the OS/2 sales figures. "People say OS/2 is selling a
little better, but it's too soon to say," Ballmer said, adding that he thinks
OS/2 application development is "dead, stone-cold dead."
James Cannavino, senior vice president of strategies and development for IBM
said that, on the contrary, applications "are coming in." Cannavino said sales
of new software are typically highest in the first month a product is on the
market, but in the case of OS/2 2.1, the first month produced the software's
lowest sales volumes.
With OS/2 now breaching new sales barriers, the company is forecasting that
it's new OS/2 for Windows, a version of OS/2 that does not include integrated
Windows code, will become the volume leader among IBM's products.
Wally Casey, director of marketing for PSP said the company had
ΓòÉΓòÉΓòÉ 9.3. # ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> $ ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> % ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> & ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ 9.4. ' ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> ( ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> * ΓòÉΓòÉΓòÉ
At the Johnson Space Center in Houston, NASA researchers are using OS/2 to lay
the groundwork for future space-based autonomous robots.
Known affectionately as "SodaPup," an OS/2 2.1-based robot is being used to
test Artificial Intelligence concepts in real world situations. Unlike the
robots who work on assembly lines in factories, SodaPup wanders about in an
office environment, interacts with humans, picks up and delivers packages, and
explores unknown areas. These tasks include path planning, computer vision,
voice recognition, natural language understanding, and reactive control.
In its test mode, SodaPup is currently wandering some hallways in NASA's
Houston offices. As it approaches an office, it may stop to drop-off a package
that it picked up at another location. At the same time, it also communicates
with a NASA researcher whose OS/2 PC has a wireless ethernet connection to the
robot. When SodaPup stumbles or behaves inappropriately, researchers can debug
and correct the system using both test data collected in real-time and software
simulations of the SodaPup robot.
OS/2 2.1 was chosen as SodaPup's multitasking operating system because it is
designed to handle many different things at the same time -- sort of like the
human brain. Several applications must run simultaneously, keeping SodaPup
alert to whatever it encounters, yet determined to perform its assigned task.
In addition, OS/2's multithreading capabilities permit each application to
handle several internal operations at the same time, as well.
A motion executor application controls SodaPup's drive wheels and maneuvers
around any obstacles in its path. Full-motion video images can be processed
on-board and/or sent off-board to other workstations for further analysis.
SodaPup can also measure the distance to objects in its sight via a laser-base
range finder application. A barcode reader application can also be used to
help determine SodaPup's location by scanning for strategically placed
barcodes. Communication between SodaPup and the researchers is managed by
TELRIP, an ethernet based message passing system.
Throughout it all, an OS/2 Presentation Manager program runs on SodaPup and the
NASA researcher's PC to provide a graphical "roadmap" of SodaPup's location and
destination. It also provides graphical representations of various sensor
readings, a text-based status/debug message window, and pull-down menus for
task selection and control.
With OS/2's memory management and multitasking capabilities, all the
applications can operate concurrently and do not prevent SodaPup from "
ΓòÉΓòÉΓòÉ 9.5. + ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> , ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> - ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ 9.6. . ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> / ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> 0 ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ 9.7. 1 ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> 2 ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> 4 ΓòÉΓòÉΓòÉ
IBM VIDEO IN/2 SOFTWARE WINS TOP PRODUCT HONORS AT COMDEX
IBM products won top honors at Fall 1993 Comdex, including a "Best of Show"
award for multimedia software which went to IBM's Ultimedia Video IN/2.
Announced and showcased at Comdex in Las Vegas on November 15, 1993, Ultimedia
Video IN/2 software enables users of IBM's OS/2* version 2.1 to capture images
and also create digital video clips in IBM's Ultimotion* and Intel's Indeo**
formats.
Video IN/2 complements the integrated multimedia capabilities of OS/2, which
include advanced synchronization and streaming capabilities and the ability to
play Ultimotion and Indeo video clips. Both real-time and off-line capture and
compression are supported by Video IN. Video IN can be used in conjunction with
many applications, including: Ultimedia Builder/2*, a multimedia presentation
package; Ultimedia Perfect Image/2* image editing software; and Ultimedia
Workplace/2, a multimedia management tool.
Video IN/2 captures Audio Video Interleaf (AVI) files in both the Ultimotion
and Indeo compression formats. Ultimotion offers high quality software only
digital video, including options such as full motion video or full screen VGA
resolution. Ultimotion is also highly scalable, allowing clips to be played at
a range of frame rates and resolutions so that playback can be optimized on
386, 486 or Pentium based hardware platforms. Ultimotion offers an excellent
compression ratio, allowing for the creation and playback of high quality video
at low data rates. This makes it ideal for networked or CD-ROM based
applications.
"We believe Video IN/2's ability to capture and compress video in real time
will add to the attractiveness of using OS/2 as the platform for many
applications, including video for multimedia titles and development of
non-linear video editing systems", said IBM PSP Multimedia Brand Manager, Karl
LaWall. "With OS/2 and Video IN, users can create video and images for
multimedia presentations, training, sales kiosks and more. The educational
community will be able to use this platform to help them create a wide range of
CD-ROM titles and hard disk based applications that use multimedia as a
teaching tool".
"There's no question we're very impressed with Video IN", said Brad Wardell,
project manager of Stardoc Systems, Inc. "Using Video IN, we're able to create
high performance software only Ultimotion video clips for our upcoming
multimedia strategy game, Galactic Civilizations. We found Video IN to be a
versatile and powerful tool, whether we were creating Ultimotion AVI files,
editing video files or converting Indeo video clips to Ultimotion. Video IN
saved us weeks of development time, and enabled us to create special effects
using software motion video that would have been difficult or impossible
otherwise".
Video IN/2's pluggable architecture will allow the product to be enhanced to
support a wide range of digital video formats. Included as part of Video IN/2
are compressors for Ultimotion and Indeo, a Video
ΓòÉΓòÉΓòÉ 10. 5 ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ 11. 6 ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> 7 ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> 8 ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> 9 ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ 11.1. : ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ 12. ; ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> < ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> = ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ 12.1. > ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> ? ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> @ ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> A ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> B ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ 13. C ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> E ΓòÉΓòÉΓòÉ
Oui le titre est appropriВ car c'est encore mieux qu'un conte de fВe. Dans le
numВro prВcВdent de OS/2 Revue, j'ai fait une Вvaluation de WordPerfect 5.2
pour OS/2. Finalement j'avais tellement de problКmes avec cette version que
j'ai dВcidВ de la retourner Е WordPerfect Corporation et obtenir un
remboursement complet.
Une chose est certaine, WordPerfect n'a pas les programmeurs compВtents pour
produire une application digne de ce nom pour OS/2. Pour prendre la dВfense des
programmeurs il faut dire que WordPerfect semblait trКs pressВe de sortir leur
version pour OS/2 dans le but de battre AmiPro de Lotus. Peut-╨ÿtre aussi
Вcoutaient-ils le disque-compact de musique nouvel Гge qu'a fait produire
WordPerfect (le plus gros premier tirage d'un disque compact jamais produit)
tout en travaillant. Quelques heures d'Вcoute de ce genre de musique vous
ramolli nimporte quel cerveau. Par contre pour les relations avec la clientКle,
WP est vraiment Е la hauteur. Lorsque j'ai appelВ pour obtenir un numВro de
retour, il n'y a eu aucun problКme. Un prВposВ m'a rВpondu presque
immВdiatement et m'a expliquВ en dВtail les procВdures Е suivre en me
confirmant que le remboursement prendrait entre quatre Е six semaines. AprКs
deux mois d'attente et un appel, oЧ on m'a dit que le remboursement tardait car
mon dossier avait ВtВ ВgarВ (et selon toute vraisemblance retrouvВ puisqu'un
chКque avait ВtВ Вmis la journВe mИme Е mon nom). Quelques jour plus tard j'ai
reЗu un remboursement comprenant le prix que j'avais payВ pour le logiciel plus
les taxes (TPS et TVQ). Le seul petit problКme, le chКque Вtait Вmis sur une
banque amВricaine et en dollars US. Comme la valeur du dollar canadien avait
variВe entre la date d'Вmission du chКque et le moment oЧ je l'ai encaissВ,
j'ai perdu environ trois dollars. О ce montant il faut ajouter 5,33$ de frais
d'envoie (incluant taxes et assurances). Leur service Е la clientКle est
tellement bon qu'on m'a mИme dit qu'il Вtait possible d'Вtablir une confВrence
tВlВphonique Е trois entre ce service, le service des retours et moi car ce
dernier service n'est pas disponible en franЗais.
Je ne sais pas si je vais refaire confiance Е leur traitement de
ΓòÉΓòÉΓòÉ <hidden> F ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ 14. G ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> I ΓòÉΓòÉΓòÉ
Connaissez-vous bien votre systКme d'exploitation OS/2 2.1? Si vous rВpondez
oui c'est que vous en ╨ÿtes l'un de ses concepteurs ou que vous avez lu OS2 2.1
UNLEASHED.
OS2 2.1 UNLEASHED est un de ces livres techniques que l'on dВvore comme un
roman malgrВ ses imposantes 1 134 pages. Ce livre contient une quantitВ
incroyable de renseignements sur notre systКme d'exploitation favori, que ce
soit au sujet de l'Вpineuse question de l'installation, ou de la configuration
du WORKPLACE SHELL.
Le livre est divisВ en 18 chapitres, chacun d'eux a ВtВ Вcrit par des auteurs
rВputВs dans le domaine. En tout 12 auteurs ayant chacun un curriculum
impressionnant, que ce soit Davis Kerr, programmeur analyste de l'Вquipe de
dВveloppement OS/2 de IBM, ou de Bill Wolff, prВsident de Wolff Data Systems ou
encore de Chris Corry, leader de l'Вquipe de dВveloppement OS/2 chez American
Management Systems.
О presque toutes les pages on retrouve des encadrВs qui prВsentent soit des
notes importantes, des trucs, ou encore des avertissements (284 notes, 177
trucs et 81 avertissements), ce qui rend la lecture encore plus facile, sans
parler des illustrations qui sont des reproductions d'Вcrans que l'on obtient
avec OS/2 2.1, donc pas de surprise lorsque l'on passe du livre au clavier.
Toutes les facettes de OS/2 2.1 y sont traitВes. Les rВglages DOS Е faire pour
obtenir, sur notre machine, le meilleur rendement. Comment continuer d'opВrer
si notre souris nous laisse tomber? Quels sont les modes graphiques supportВs
par le PRESENTATION MANAGER? Savez-vous que l'on peu crВer une image en format
bitmap avec n'importe quelle application, la copier dans le presse-papier et la
coller dans l'Вditeur d'icУnes?
En plus de tous ces trucs, avertissements et renseignements, OS2 2.1 UNLEASHED
vient avec une disquette presque pleine de shareware. Vous trouverez sur OS2
2.1 UNLEASHED:
4OS2 un puissant remplacement pour les commandes OS/2,
INIMaint un outils pour faciliter la gestion des fichiers INI,
TE2 un programme de communication efficace,
LH2 un compresseur/dВcompresseur de fichiers,
GALLERIA une application qui permet de gВrer et de modifier les fichiers
graphiques,
PM Scrapbook une application 32 bit pour organiser les fichiers et les
informations,
DESKMAN/2 une utilitВe pour faire des copies de sВcuritВ des objets dans le
WORKPLACE SHELL
DISKSTAT une petite application qui vous permet de continuellement voir
ΓòÉΓòÉΓòÉ <hidden> J ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ 15. K ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> L ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> M ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ 15.1. O ΓòÉΓòÉΓòÉ
Sorry there is no translation of this section. It is like the preceeding
section but with the verbose option on.
Nous entreprenons avec ce deuxiКme numВro de OS/2 une introduction Е la
programmation GUI en C++ pour OS/2. Bien que j'aie eu Е Вcrire des programmes
en BASIC, en FORTRAN ou en TurboPascal, bien que j'aie touchВ au FORTH et au
Modula et bien que j'Вcrive des programmes pour SPSS je ne suis pas un
programmeur. Je suis un ocВanographe et un biologiste (spВcialisВ en
statistiques). Pourquoi alors Вcrire sur la programmation pour OS/2. Justement
comme je ne suis pas un spВcialiste, je comprend un peu plus les Вtapes
difficiles par lesquelles il faut passer. Je sais qu'il est trКs facile de ne
pas voir ce qui pour tout professionnel est "si Вvident qu'un enfant de quatre
ans pourrait comprendre". J'ai commencВ la programmation en C++ pour OS/2 le
printemps dernier. La premiКre chose Е dire est que la courbe d'apprentissage
est trКs forte au dВbut. Il y a tellement de chose Е voir. Tous ces paramКtres
qu'il faut inclure (jusqu'Е une douzaine) seulement pour une des centaines de
fonctions existantes propres Е la programmation PM. Il n'est pas surprenant que
le dВcouragement puisse pointer du nez.
C'est pourquoi j'ai dВcidВ d'entreprendre cette sВrie. Je vais essayer de vous
faire partager mes trouvailles et trouver un nouveau motivateur pour continuer
Е approfondir la programmation PM. Je vous prВsente une application "simple"
complКte incluant plusieurs fenИtres dont une fenИtre de dialogues, avec champs
d'entrВe et de sortie, et une autre utilisant des fonctions de traЗage. Avec ce
numВro, vous avez tous les fichiers de codes ainsi que le fichier compilВ prИt
Е Иtre exВcutВ. J'utilise Borland C++, je n'ai pas pu tester mon code avec le C
Set++ de IBM. En temps normal, il ne devrait pas y avoir de problКme avec ce
dernier. Les fonctions utilisВes sont supposВes Иtre supportВes par les deux
compilateurs. Les fichiers ne comportent aucune explications. Je dois dire
(comme tous les auteurs et professeurs de programmation) que cela va Е
l'encontre de toute bonne programmation. Il faut toujours amplement commenter
ses programmes. Ne vous fiez pas Е votre mВ
ΓòÉΓòÉΓòÉ 15.2. P ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> Q ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> R ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ 15.3. S ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ 16. T ΓòÉΓòÉΓòÉ
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
Fonctions nВcessaires pour faire du programme une application graphique dans
Presentation Manager. Les #define viennent en premier dans un programme avec
les #include
Needed functions to compile a GUI program able to run under the Presentation
Manager (graphical insttead of text application).
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
Ce fichier contient un ensemble de dВfinitions propres Е OS/2 et inclus
plusieurs autres fichier "included" (suffixe h pour "header"). Vous pouvez
Вcrire vos propres fichiers header. En fait il y en a un avec le programme
exemple1. Les fichiers header sont en format texte. Il vous est trКs facile de
les consulter (Attention pour ne pas apporter de modifications). Au moment de
la compilation, les dВfinitions qu'ils contiennent sont ajoutВes Е votre
programme.
This file contains many definitions specific to OS/2 and include many other
"included" files. The h suffix stand for header as they are at the beginning of
the program. You can easily read a header file since they are in text format.
Take care not to introduce modification in them (particularly the one included
with your programming software). These definitions are included in your program
when you compile it.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
DВclaration des prototypes des fonctions utilisВes dans le programme. Cette
dВclaration n'est pas absolument nВcessaire mais recommandВe par les normes
ANSI. Cette ligne est donc indВpendante, pour l'instant, de toute autre ligne
de code. Remarquez qu'elle se termine par un point-virgule, dans le cas de la
ligne qui commence une fonction, il n'y en a pas. Ceci permet de diffВrencier
un prototype du dВbut d'une fonction. Nous aborderons plus loin les termes
entre parenthКeses.
Prototyping the functions is not an obligation but is recommanded to follow the
ANSI norms. This line is all bay itself. Notice that there is a semicolon at
the end of tle line. For the actual first line of a function there is no
semicolon. This is the way to diffentiate a prototype from the first line of a
function. We will see later the terms in parentheses.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
Choisissez / Choose:
FranЗais
English
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
DВbut de la fonction pour gВrer la fenИtre. Pour rВussir une gestion efficace
il que le systКme communique avec la fenИtre. Il faut donc une "poignВe" (un
identificateur unique) pour que le systКme s'adresse Е cette fenИtre lorsque
c'est nВcessaire. Il faut aussi un moyen d'envoyВ des messages Е la fenИtre
(par exemple position du curseur ou si une touche, ou un bouton de la souris,
est utilisВe). De plus la fenИtre doit Иtre capable d'Вchanger des paramКtres
avec le systКme ou d'autre applications.
HWND est le type de variable pour la poignВe (Handle WiNDow) et hwnd est la
variable qui contient la valeur de cette poignВe pour la fenИtre qui reЗoit le
message.
La variable message msg est du type MSG et contient l'identificateur du
message. Le message peut correspondre Е une des constante prВdВfinie
(WM_CREATE) par le systКme ou Е un message propre Е l'application.
Les variables mp1 et mp2 (types MPARAM1 et MPARAM2) sont les paramКtres du
message et leur interprВtation dВpend du type de message reЗu. Par exemple la
position en x et y du pointeur de la souris est dans mp1 alors que pour un
caractКre (selon la touche enfoncВ) mp1 contient trois informations et mp2 en
contient deux.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
Beginning of the function that manage the window. For a successful management
the system must be able to "talk" with that window so there must be a handle to
that window that the system can use when necessary. The system and the window
also need to excahnge messages (like the position of the cursor or if a key, or
a mouse button, is press). The window can also be able to exchange parameters
with the system and/or other applications.
HWNM is the variable type of the handle hwnd of the window (Handle WiNDow)
receiving the message.
The variable msg is of MSG type. Its value is the message identifier. The
message can be a predefined constant included in the system or an
application-defined message identifier.
The variables mp1 and mp2 (MPARAM1 and MPARAM2 type) are the message
parameters. Their interpretation made according to the kind of message. For
example, the position x and y of the mouse pointer are in mp1. For a character
(a pressed key), mp1 one can be divided into three parts and mp2 in two.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
Selon la valeur de msg, diffВrentes actions seront entreprises.
Depending on the value of msg, different responses will be choosen.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
Message de crВation. L'application demande la crВation de la fenИtre. WM
signifie message-fen╨ÿtre (Window Message). Plusieurs messages commence avec ce
prefixe.
Occurs when the application requests creation of the window. WM stand for
Window Message. Many messages begin with that prefix.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
Le message en est un de fermeture de la fenИtre. Il est envoyВ lorsque l'usager
demande (choix de menu-systКme ou menu de l'application ou autre) de fermer
(terminer) la fenИtre. L'application peut rВagir (demander une confirmation ou
autre) avant de se terminer.
This message is sent to the window when the user close it. The program can
react to that request and ask for a confirmation or do some cleaning before
closing the window.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
Cette fonction prВdВfinie crВe une fenИtre message composВ de trois parties:
l'icУne, le message et les boutons. Elle prend en charge tout le processus
d'affichage (position et taille) et du contrУle des boutons disponible. Le
message peut Иtre directement indiquВ ou Иtre une chaМne de caractКre dВjЕ
dВfinie dans une variable.
This function create and display a message box with three parts: the icon, the
message and the buttons. It processes (using message-box constant) the display
(size and position) of the window and the user input (selected button in the
window ). The message is a null-terminated string.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
HWND_DESKTOP identifie le parent de cette fen╨ÿtre. La position et d'autres
caractВristiques seront en fonction de ce parent. Pour ce cas particulier, le
parent est la fen╨ÿtre du bureau.
HWND_DESKTOP identifie the parent of that window. The position and some others
caracteristics are relative to the parent. In that particular case, the parent
is the desktop window.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
Cette variable, hwnd, identifie le propriВtaire de la fenИtre.
The value of that variable, hwnd, refer to the owner of the message-box window.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
Cette chaМne de caractКres sera le message de la fenИtre-message. p. This
string is the message display in the message-box.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
Cette chaМne de caractКres est aussi affichВe. Elle peut Иtre dВclarВe nulle
(NULL). Elle est affichВe au-dessus du message.
This string is also display. It can be declared NULL. It is display above the
message.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
Identifieur de la fenИtre (exemple MA_FENETRE_MESSAGE) et peut Иtre laissВ
nulle.
Window ID (like MY_MESSAGEBOX) and can be equal to 0.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
Les boutons (Mouse Button, MB) Yes et No seront affichВs dans la fenИtre.
The Yes and No mouse button (MB) will be displayed.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
L'icУne "?" sera affichВe. Notez l'opВrateur logique ou "|" qui permet de
joindre plusieurs styles.
The "?" icon will be displayed. Notice the logical operator or "|" that must be
used to join many styles.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
Si la fen╨ÿtre-message retourne le message correspondant au bouton Yes alors la
ligne suivante sera exВcutВe. Sinon aucune action n'est prise. Dans les deux
cas, la fenИtre est fermВe par le systКme.
If the message return bu the message-box is corresponding to the Yes button
being pressed then the next line will be executed else nothing is done. In
either cases, the message-box is closed.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
Si le rВsultat du test prВcВdent est vrai (le bouton Yes est enfoncВ) un
message est envoyВ Е la fenИtre ayant la poignВe hwnd. Ce message est de
terminer. La fenИtre qui reЗoit le message traitera, comme nous le verrons,
cette information.
If the preceding test is true (the Yes button is pressed) a message is send to
the window corresponding to the handle hwnd. The message is to quit (end) the
window (Window Message). The window will process that message as we will see.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
Ici le fond de la fenИtre est effacВ et repeint selon la couleur de dВfaut du
systКme. Faites l'essai suivant: changer la valeur TRUE pour FALSE dans la
ligne return(MRESULT)(TRUE) qui suit. Recompiler le programme et regarder le
rВsultat.
Here the background of the window is paint with the default color. Try this:
change the TRUE value of the following line for FALSE. Compile the new code and
see what it gives.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
Le dernier cas est toujours "default". En effet, une fenИtre doit rВpondre Е
tous les messages qui lui sont envoyВs. PlutУt que de prВvoir une rВponse pour
tous les cas, il est plus simple de rВpondre Е un nombre limitВ pertinent Е
cette fenИtre et de passer tous les autres dans le cas de dВfaut.
The last case of the switch statement is always defautl. A window must process
every messages sent to it. Instead of trying to write an answer for every one,
it is easier to process just the one needed and to pass the others to the
default case.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
Cette fonction retourne au systКme d'exploitation tout message non traitВ par
l'application. Cet appel doit Иtre fait pour chaque message non traitВ par la
fen╨ÿtre.
The WinDefWindowProc passes the message back to the operating system. This call
must be made for every message not process by the window.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
Voici la prodВdure principale. Pour la majoritВ des applications du
Presentation Manager, elle est pratiquement la m╨ÿme. Elle remplit
essentiellement quatre tГches:
1. CrВer une fenИtre et une file d'attente ("queue") pour les messages.
2. Traiter, Е l'intВrieur d'une boucle, les messages destinВs Е la fenИtre.
3. DВtruire la fenИtre et la file d'attente des messages lorsque la boucle se
termine.
4. Terminer l'application.
This is the main procedure. For almost all PM application, the main procedure
is similar to this one. In general, it performs three task:
1. Creates a window and message queue.
2. Processes, in a loop, the messages destined to the window.
3. Destroys the window and the message queue at the end of the loop.
4. Exits.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
Chaque application doit avoir un "bloc d'ancrage" (anchor block). La fonction
WinInitialize retourne une poignВe (Handle) pour ce bloc. Le paramКtre doit
toujours Иtre zВro. C'est une des premiКre tГche accomplie, avec la crВation
d'une file d'attente des messages, que fait la procВdure principale.
Every application must have a anchor block. The WinInitialize function returns
a handle to that block. There is only one parameter and it must be 0. This
initialization and the creation of a message queue are the two first tasks done
by the main procedure.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
Une file d'attente des messages est crВВe. La fonction WinCreateMsgQueue
retourne une poignВe pour cette file. Une file d'attente sert pour toutes les
fenИtres d'une mИme filiaire (thread). Comme cette fonction utilise la poignВe
pour le bloc d'ancrage comme premier paramКtre, celle-ci doit Иtre dВjЕ
dВfinie. Le deuxiКme paramКtre est la longueur de la file d'attente. Le zВro
indique que la longueur de dВfaut, qui est de 10 messages, est employВe.
A message queue is created. The WinCreateMsgQueue returns a handle for that
queue. Only on queue is needed for all the windows in a thread. The first
parameter is the handle to the anchor block. The WinInitialize must be call
first. The second parameter is the length of the queue. The 0 is use for the
default length (10 messages).
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
Choisissez / Choose:
FranЗais.
English.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
L'application enregistre une classe de fenИtres. Les paramКtres sont:
1. La poignВe du bloc d'ancrage.
2. Le nom, unique pour cette application, de la classe. Une variable,
prВalablement initialisВe, peut Иtre utilisВe Е la place de la chaМne de
caractКres.
3. La procВdure qui traitera cette classe de fenИtres.
4. Le style de la classe. Plusieurs style peuvent Иtre combinВs en utilisant
l'opВrateur OU "|".
5. Espace additionnelle, en octets, Е rВserver pour des donnВes relatives Е
chaque fenИtre crВВe avec cette classe.
Chaque classe de fenИtres est associВe avec une procВdure de fenИtre.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
The application registers a window class. the parameters are :
1. The handle to the anchor block.
2. The name of the class. That name must be unique within the application.
You can used a pre-initialized variable.
3. The class style. Many styles can be combined by using the bitwise OR "|".
4. Extra space, in byte, to reserve for window data.
Every window class is associated with a window procedure.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
La variable flcreate regroupe les paramКtres de contrУle du cadre
(frame-control flags). Leur ВnumВration et description seront donnВes dans un
prochain numВro.
The flcreate variable group the frame-control flags for the window. In the next
issue we will list and describe them.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
Choisissez / Choose:
FranЗais.
English.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
La fonction WinCreateStdWindow crВe une fenИtre standard. La poignВe de cette
fenИtre est passВe Е la variable hwndFrame. Les paramКtres sont:
1. Qui est le parent. Dans ce cas c'est le bureau (desktop).
2. Style de fenИtre, dans ce cas la fenИtre est visible. Une valeur de zВro
donne une fenИtre qui n'est pas affichВe Е l'Вcran. Cela permet de lui
apporter certaines transformations avant de l'afficher. N'essayez pas avec
zВro car il est impossible de terminer l'application.
3. Les paramКtres de contrУle du cadre.
4. Le nom de la classe de fen╨ÿtres.
5. Le titre de la fen╨ÿtre.
6. Autre paramКtres de visibilitВ pour la fenИtre client.
7. Varie selon que les ressources sont contenues directement dans
l'application.
8. Identifie la ressource (fichier ressources que nous verrons plus tard).
9. Pointeur vers la poignВe de la fenИtre client.
Cette fonction crВe une fenИtre standard sans qu'il soit obligВe de prВciser
certains de ses attributs. La fonction WinCreateWindow d'une forme plus
gВnВrale mais demande plus de paramКtres.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
This function creates a stardard OS/2 window. The whndFrame variable contains
the handle to that window. The parameters are:
1. The parent, in this case the desktop window.
2. The window style. In this case the window is visible. A 0 value gives a
window that is not visible. This is useful to apply transformations to the
window before displaying it. Don't try that in this program. It is not
possible to close an invisible window.
3. The frame-control flags.
4. The name of the window class.
5. The title of the window.
6. Another visibility parameter.
7. The resources are in the application.
8. The resources identifier (we will see the resources file in the next
issue).
9. A pointer to the client window handle.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
Choisissez / Choose:
FranЗais.
English.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
Dans un programme pour DOS, lorsque le programme attend pour une entrВe, il
n'est pas nВcessaire de surveiller autre chose en mИme temps. Sous OS/2, on ne
peut faire de mИme. Une application qui attendrait pour une entrВe (venant soit
de l'usager soit du systКme) empКcherait toutes les autres applications de
fonctionner. О la place une boucle est crВВe qui rВcupКre les messages adressВs
au bloc d'ancrage crВВ au dВbut de l'application. Si un message est rВcupВrВ
pour ce bloc il lui est envoyВ. La fenИtre (ou les fenИtres) crВВe s'occupe de
traiter ces messages. Comme nous l'avons vu, un message peut tout aussi bien
Иtre la position du curseur, l'Вtat d'un bouton de la souris ou une demande de
repeindre la fenИtre. Le systКme d'exploitation se charge d'enlever les
messages redondants qui pourraient ╨ÿtre dans la file d'attente. La condition
devient fausse lorsqu'un message de terminer l'application esr reЗu.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
In a DOS program, there is only one application waiting for inputs. So if the
program ask for the name of the user, there is no need to check for other
application also waiting for input. With OS/2 things are different. A loop is
used to retreive the messages addressed to the anchor block created at the
beginning of the application. If there is a message for that block, it is
passed to the window for processing. The system organized the messages and
dispatch them to the right block. As we have seen, a message can be the
position of the cursor, the state of a mous button or a request to refresh the
window. The condition tested becomes false when a message to terminate the
application is received.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
Cette fonction dВtruit la fenИtre ayant la valeur contenue dans hwndFrame comme
poignВe. Les fenИtres enfants (crВВes dans cette fenИtres) sont fermВes avant.
This function closes and destroys the window. Any other window created in that
window will be closed first.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
La file de message avec pour poignВe la valeur de hmq est dВtruite.
The message queue with the hmq handle is destroyed.
ΓòÉΓòÉΓòÉ <hidden> ΓòÉΓòÉΓòÉ
Toute l'application est dВtruite et les ressources qui Вtaient prises sont
retournВes au systКme d'exploitation. Il est primordiale de dВtruire avant les
fenИtres et les files d'attente des messages crВВes.
The application is destroyed and the ressources used are returned to the
operating system. It is necessary to destroy first the windows and the message
queues.