Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Är det någon som kan förklara denna C-kod?

Postades av 2002-07-22 16:37:03 - Leif Edh, i forum visual basic - allmänt, Tråden har 8 Kommentarer och lästs av 771 personer

hCommFile = *((LPHANDLE)((LPBYTE)lpVarString + lpVarString -> dwStringOffset));
Jag håller på med TAPI i VB men många exempel är i C, så därför denna fråga: Är det någon som kan förkalara denna rad på vanlig svenska....

MVH Leif


Svara

Sv: Är det någon som kan förklara denna C-kod?

Postades av 2002-07-22 16:47:53 - Sven Åke Persson

Hej
Jag börjar .
hCommFile = *((LPHANDLE)((LPBYTE)lpVarString + lpVarString -> dwStringOffset));
Jag håller på med TAPI i VB men många exempel är i C,
så därför denna fråga: Är det någon som kan

LpHandle betyder longPointer till handtag lpVarString
betyder pekare till (pointer) till den String du skickar
dwStringOffset betyder DoubleWordOffset dvs 32 bitar 4 byte

Lp och Dw är i princip samma sak Dvs det Vi i VB kallar Long.

Sven


Svara

Sv: Är det någon som kan förklara denna C-kod?

Postades av 2002-07-22 16:58:53 - Thomas Tydal

> hCommFile = *((LPHANDLE)((LPBYTE)lpVarString + lpVarString ->
> dwStringOffset));

Vi får börja inifrån och ut, tror jag...

I princip kan man säga att objektet lpVarString har en medlem som heter dwStringOffset. Innehållet i denna medlem är ett tal. Detta tal adderas till minnesadressen för lpVarString. Den nya minnesadressen som uppstår görs först om till en byte och sedan till ett handle. Slutligen lagras värdet, som finns på den minnesplatsen, i hCommFile.

Vad som sker är alltså att det som finns så många bytes fram i lpVarString som dwStringOffset anger, lagras i hCommFile.

C är trevligt i den bemärkelsen att man kan göra vad 17 som helst :-)



Svara

Sv: Är det någon som kan förklara denna C-kod?

Postades av 2002-07-22 17:24:32 - Leif Edh

Jag har hittat ett exempel i VB och där man deklarerar varstring så här:

Type varString
dwTotalSize As Long
dwNeededSize As Long
dwUsedSize As Long
dwStringFormat As Long
dwStringSize As Long
dwStringOffset As Long
bBytes(2000) As Byte 'HACK Added to TAPI structure for lineGetID data.
End Type

Enl Microsoft ser den ut så här i C

typedef struct varstring_tag {
DWORD dwTotalSize;
DWORD dwNeededSize;
DWORD dwUsedSize;
DWORD dwStringFormat;
DWORD dwStringSize;
DWORD dwStringOffset;
} VARSTRING, FAR *LPVARSTRING;


hCommFile ska efter en funktion som heter LineGetID innehålla adressen till Comporten d.v.s 0x2F8 eller 0x3F8 detta försöker jag då leta fram i bBytes men där hittar jag inte den adressen.

MVH
Leif


Svara

Sv: Är det någon som kan förklara denna C-kod?

Postades av 2002-07-22 17:26:25 - Sven Åke Persson

Hej
Thomas Thy...
Berätta hur går det på lokförar köret.Törs man åka med dig :-) ?

Sven


Svara

Sv: Är det någon som kan förklara denna C-kod?

Postades av 2002-07-22 17:48:24 - Leif Edh

mer info...
Jag provar med programmet TAPI browser och får följande utskrift:
Calling lineGetID
hLine=x0
dwAddressID=x0
hCall=x10299
dwSelect=x4
lpDeviceID=x283d98
lpszDeviceClass=x6f554
lineGetID returned SUCCESS
VARSTRING
dwTotalSize=x1000
dwNeededSize=x3c
dwUsedSize=x3c
dwStringFormat=x4, BINARY
dwStringSize=x24
dwStringOffset=x18
00000154 65776f50 74694272 6b383220 T...PowerBit 28k
33332038 5620366b 6563696f 54584520 8 33k6 Voice EXT
00322320 xxxxxxxx xxxxxxxx xxxxxxxx #2.

Men här kan jag inte heller se vart portadressen ligger.....


MVH
Leif


Svara

Sv: Är det någon som kan förklara denna C-kod?

Postades av 2002-07-22 17:58:50 - Leif Edh

så här ser det ut i sitt sammanhang....

lineGetID(hLine, 0L, NULL, LINECALLSELECT_LINE, lpVarString,"comm/datamodem");

hCommFile = *((LPHANDLE)((LPBYTE)lpVarString + lpVarString -> dwStringOffset));

Men hur ska jag hitta värdet till hCommFile i VB ???

MVH
Leif Edh


Svara

Sv: Är det någon som kan förklara denna C-kod?

Postades av 2002-07-22 23:49:37 - Thomas Tydal

> Berätta hur går det på lokförar köret.

Jag är klar med grundutbildningen och har fått anställning hos SJ i Västerås. Dock börjar jag inte där förrän 1 september, för de måste ge mig tilläggsutbildning på de fordon och sträckor som de kör, och det har de inte möjlighet till förrän till hösten på grund av semester...

Så, fram till dess har jag skaffat sommarjobb. Hos Banverket. Står vid sidan av spåret i orange kostym och vinkar till alla tåg som far förbi :-)

Nåja, nästan i alla fall. Min befattning är tillsyningsman och jag ansvarar för säkerheten på ett norskt lok med en maskin som är i Sverige och arbetar. Fordonet kallas spårstabilisator och körs efter att man har bytt slipers på en sträcka innan den ordinarie trafiken släpps på. Anledningen till att jag är med är att föraren är norsk och därför inte har behörighet att köra i Sverige.


Svara

Sv: Är det någon som kan förklara denna C-kod?

Postades av 2002-07-23 17:31:50 - Thomas Tydal

> Men hur ska jag hitta värdet till hCommFile i VB ???

Jag kan ju inte VB, men...

Du får kolla värdet på dwStringOffset och förflytta dig så många steg framåt i lpVarString, och när du kommit dit så sparar du talet som finns där, vilket ska vara hCommFile.


Svara

Nyligen

  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo
  • 14:25 Tips på verktyg för att skapa QR-k
  • 14:23 Tips på verktyg för att skapa QR-k
  • 20:52 Fungerer innskuddsbonuser egentlig

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 607
27 953
271 705
557
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies