|
1 From: matthewf@msexchange2k.closedtest.intra |
|
2 To: matthewf@msexchange2k.closedtest.intra |
|
3 Subject: test_9 |
|
4 Date: Sun, 23 May 2004 17:35:32 +0530 |
|
5 MIME-Version: 1.0 |
|
6 Content-Type: multipart/mixed; |
|
7 boundary="----=_NextPart_000_0078_01C440EC.58FAAFA0" |
|
8 X-Priority: 3 |
|
9 X-MSMail-Priority: Normal |
|
10 X-Mailer: Microsoft Outlook Express 5.50.4922.1500 |
|
11 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4925.2800 |
|
12 |
|
13 This is a multi-part message in MIME format. |
|
14 |
|
15 ------=_NextPart_000_0078_01C440EC.58FAAFA0 |
|
16 Content-Type: text/plain; |
|
17 charset="iso-8859-1" |
|
18 Content-Transfer-Encoding: 7bit |
|
19 |
|
20 Internet access on the Nokia 9200 Series Communicator is necessarily limited |
|
21 by the speed of the phone's GSM connection. As a consequence, testing and |
|
22 debugging Internet-based applications on hardware can be both expensive and |
|
23 tedious. The RAS IAP application alleviates this problem by enabling you to |
|
24 connect to the Internet over a much faster serial connection, via your PCThe |
|
25 application demonstrates how the Symbian OS Communications database (CommDb) |
|
26 API may be used to configure an Internet Access Point (IAP). To some extent |
|
27 it also shows the common paradigm for using most DBMS derived APIs.An |
|
28 Internet Access Point defines ISP, modem, charge card and location records |
|
29 that can be used together to make an Internet connection. The IAP for the |
|
30 RAS connection specifies an ISP and modem record (charge card and location |
|
31 records are required for this type of IAP). The CommDb is a standard DBMS |
|
32 database. Modems, ISPs, charge cards, locations, IAPs etc are all stored in |
|
33 their own tables within the database. There may be a number of records |
|
34 within each table (e.g., there may be a number of IAPs, modems, ISPs, etc.). |
|
35 As described in the preceding section, each IAP record defines the set of |
|
36 ISP, modem, charge card, and location that can be used together. In other |
|
37 words, an IAP record defines a set of records the other tables.The |
|
38 implication of the above statement is that sets of CommDb records are |
|
39 accessed through their associated table. The other implication is that you |
|
40 cannot create an IAP record until you have already created the other |
|
41 records. Finally, the fact that there may be many records in a table implies |
|
42 that each record must be uniquely identified.2. Copy an existing CommDb that |
|
43 has a correctly configured IAP. This method "works", but has several |
|
44 problems. Firstly, Symbian does not guarantee that the CommDb will be binary |
|
45 compatible between releases. In practice this has not been an issue, but it |
|
46 is something to keep in mind. Secondly, while you are using your RAS IAP, |
|
47 you don't have access to IAPs you configured in the "real" CommDb. Finally, |
|
48 and most importantly, CommDb configuration should be targeted to the |
|
49 platform; The CommDb that you use for RAS connections may well disable some |
|
50 of your other phone services.. Add an IAP to your existing (proven) CommDb |
|
51 using RAS IAP. The advantage of this method is that you get to retain the |
|
52 CommDb that your manufacturer put onto the phone, and therefore can expect |
|
53 the device to continue to work with the new IAP! Also, the CommDb API is |
|
54 binary compatible between releases, so you can rely on this method as you |
|
55 change phone. It is also by far the simplest method! Rather than coding the |
|
56 application from first principles, I used the standard Minimal Eikon |
|
57 Application Developer (MEAD) and Menu Builder tools to create an application |
|
58 that I could easily customize. I then modified the engine to write to the |
|
59 CommDb, and the UI to call the engine as appropriate. Each of these exports |
|
60 calls non-exported functions to actually implement the creation and deletion |
|
61 of the components of the IAP |
|
62 |
|
63 ------=_NextPart_000_0078_01C440EC.58FAAFA0 |
|
64 Content-Type: image/jpeg; |
|
65 name="MS.JPG" |
|
66 Content-Transfer-Encoding: base64 |
|
67 Content-Disposition: attachment; |
|
68 filename="MS.JPG" |
|
69 |
|
70 /9j/4AAQSkZJRgABAgIAAAAAAAD/4QAKUElDAAEyMgD/wAARCAAgACADAREAAhEBAxEB/9sAhAAZ |
|
71 ERIVEg8ZFRQVHBoZHSU+KCUiIiVMNjktPlpPX11ZT1dVZHCPeWRqh2tVV32qfoeUmaCioGB4sL2v |
|
72 nLuPnaCaARocHCUgJUkoKEmaZ1dnmpqampqampqampqampqampqampqampqampqampqampqampqa |
|
73 mpqampqampqampqampr/xAGiAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgsQAAIBAwMCBAMF |
|
74 BQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJChYXGBkaJSYnKCkq |
|
75 NDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeIiYqSk5SVlpeYmZqi |
|
76 o6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq8fLz9PX29/j5+gEA |
|
77 AwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoLEQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFR |
|
78 B2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVW |
|
79 V1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrC |
|
80 w8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2gAMAwEAAhEDEQA/AOnkdYo2kdgq |
|
81 ICzE9gKAONGoXbXkt7DM0LStu2dV28AAjoeB1rGVS0j0qWCU6SbdmzWs/EseVj1BBC56SJyh/qK1 |
|
82 i+ZaHHWoTou0jcjkSVA8bq6NyGU5BpmJl60Wu2j0yJ9rSgvK2M7UHtkdTgfnWNeqqUOYqO5nXFjF |
|
83 YaXO1yiSSsxEcqrynGFyewyM/jjnv50Krq1FyOy6rudTqSnU572f5GHK8Uqlw5DAYUev4V7ND29C |
|
84 ajBau33G2IlQrwc3Lbb/AIYsaM15/aEUFlO8XmH58cgDucHjpXoY2lSgk0rNnlRbZu290La8uH1F |
|
85 Xtprh8qZPubQDtUMCRwOvTk183jaVWbTSukbRaMi4iubeeT7ScTyKQ7Bgd6ng9O3pnHt04uEoSj7 |
|
86 uy/A5ajnBtt7mYqs0mzADdxjgV9BHEQw+Hi4O/z+8G0lc6jwpYeVbveyD55vlT2Uf4n+QrkrVnWn |
|
87 zM2SsjekjSVCkiK6NwVYZBrEZiXvhtG+exl8lgMCN8snc4HcckmocEyJQUtzI/s67e9jsZoWiaU4 |
|
88 LdRtHUg9+P5iojTtIyjStK7OyjRYo1jRQqIAqgdgK2Og/9k= |
|
89 |
|
90 ------=_NextPart_000_0078_01C440EC.58FAAFA0 |
|
91 Content-Type: text/plain; |
|
92 name="3kb.txt" |
|
93 Content-Transfer-Encoding: quoted-printable |
|
94 Content-Disposition: attachment; |
|
95 filename="3kb.txt" |
|
96 |
|
97 Internet access on the Nokia 9200 Series Communicator is necessarily = |
|
98 limited by the speed of the phone's GSM connection. As a consequence, = |
|
99 testing and debugging Internet-based applications on hardware can be = |
|
100 both expensive and tedious. The RAS IAP application alleviates this = |
|
101 problem by enabling you to connect to the Internet over a much faster = |
|
102 serial connection, via your PCThe application demonstrates how the = |
|
103 Symbian OS Communications database (CommDb) API may be used to configure = |
|
104 an Internet Access Point (IAP). To some extent it also shows the common = |
|
105 paradigm for using most DBMS derived APIs.An Internet Access Point = |
|
106 defines ISP, modem, charge card and location records that can be used = |
|
107 together to make an Internet connection. The IAP for the RAS connection = |
|
108 specifies an ISP and modem record (charge card and location records are = |
|
109 required for this type of IAP). The CommDb is a standard DBMS database. = |
|
110 Modems, ISPs, charge cards, locations, IAPs etc are all stored in their = |
|
111 own tables within the database. There may be a number of records within = |
|
112 each table (e.g., there may be a number of IAPs, modems, ISPs, etc.). As = |
|
113 described in the preceding section, each IAP record defines the set of = |
|
114 ISP, modem, charge card, and location that can be used together. In = |
|
115 other words, an IAP record defines a set of records the other tables.The = |
|
116 implication of the above statement is that sets of CommDb records are = |
|
117 accessed through their associated table. The other implication is that = |
|
118 you cannot create an IAP record until you have already created the other = |
|
119 records. Finally, the fact that there may be many records in a table = |
|
120 implies that each record must be uniquely identified.2. Copy an existing = |
|
121 CommDb that has a correctly configured IAP. This method "works", but has = |
|
122 several problems. Firstly, Symbian does not guarantee that the CommDb = |
|
123 will be binary compatible between releases. In practice this has not = |
|
124 been an issue, but it is something to keep in mind. Secondly, while you = |
|
125 are using your RAS IAP, you don't have access to IAPs you configured in = |
|
126 the "real" CommDb. Finally, and most importantly, CommDb configuration = |
|
127 should be targeted to the platform; The CommDb that you use for RAS = |
|
128 connections may well disable some of your other phone services.. Add an = |
|
129 IAP to your existing (proven) CommDb using RAS IAP. The advantage of = |
|
130 this method is that you get to retain the CommDb that your manufacturer = |
|
131 put onto the phone, and therefore can expect the device to continue to = |
|
132 work with the new IAP! Also, the CommDb API is binary compatible between = |
|
133 releases, so you can rely on this method as you change phone. It is also = |
|
134 by far the simplest method! Rather than coding the application from = |
|
135 first principles, I used the standard Minimal Eikon Application = |
|
136 Developer (MEAD) and Menu Builder tools to create an application that I = |
|
137 could easily customize. I then modified the engine to write to the = |
|
138 CommDb, and the UI to call the engine as appropriate. Each of these = |
|
139 exports calls non-exported functions to actually implement the creation = |
|
140 and deletion of the components of the IAP |
|
141 ------=_NextPart_000_0078_01C440EC.58FAAFA0-- |