Einzelnen Beitrag anzeigen

Robert Marquardt
(Gast)

n/a Beiträge
 
#11

Re: Einem Array of WChar einen String zuweisen

  Alt 10. Dez 2003, 15:56
So ich habe mir mal die Datei aus dem Win XP DDK zur Brust genommen.
Ich hab jetzt keine Lust dem ganzen API nachzurennen. XcvData ist z. B. nicht darin deklariert.
Die obigen Konversionen sind soweit richtig bis auf die erwaehnten Fehler.
Extra Typen mit Delphi-like Namen hab ich auch nicht gemacht.

Delphi-Quellcode:
{*++

Copyright (c) 1997 - 1999  Hewlett-Packard Company.
Copyright (c) 1997 - 1999  Microsoft Corporation
All rights reserved

Module Name:

  tcpxcv.h

--*}


unit tcpxcv;

interface

uses
  Windows;

const
  RAWTCP = 1;
  PROTOCOL_RAWTCP_TYPE = RAWTCP;

  LPR = 2;
  PROTOCOL_LPR_TYPE = LPR;

  MAX_PORTNAME_LEN = 63 +1; // port name length
  MAX_NETWORKNAME_LEN = 48 +1; // host name length
  MAX_SNMP_COMMUNITY_STR_LEN = 32 +1; // SNMP Community String Name
  MAX_QUEUENAME_LEN = 32 +1; // lpr print que name
  MAX_IPADDR_STR_LEN = 15 +1; // ip address; string version
  MAX_ADDRESS_STR_LEN = 12 +1; // hw address length
  MAX_DEVICEDESCRIPTION_STR_LEN = 256+1;

type
  PPORT_DATA_1 = ^PORT_DATA_1;
  PORT_DATA_1 = packed record
    sztPortName: array [0..MAX_PORTNAME_LEN-1] of WideChar;
    dwVersion: DWORD;
    dwProtocol: DWORD;
    cbSize: DWORD;
    dwReserved: DWORD;
    sztHostAddress: array [0..MAX_NETWORKNAME_LEN-1] of WideChar;
    sztSNMPCommunity: array [0..MAX_SNMP_COMMUNITY_STR_LEN-1] of WideChar;
    dwDoubleSpool: DWORD;
    sztQueue: array [MAX_QUEUENAME_LEN-1] of WideChar;
    sztIPAddress: array [MAX_IPADDR_STR_LEN-1] of WideChar;
    Reserved: array [0..539] of Byte;
    dwPortNumber: DWORD;
    dwSNMPEnabled: DWORD;
    dwSNMPDevIndex: DWORD;
  end;

  PDELETE_PORT_DATA_1 = ^DELETE_PORT_DATA_1;
  DELETE_PORT_DATA_1 = packed record
    psztPortName: array [0..MAX_PORTNAME_LEN-1] of WideChar;
    Reserved: array [0..97] of Byte;
    dwVersion: DWORD;
    dwReserved: DWORD;
  end;

  PCONFIG_INFO_DATA_1 = ^CONFIG_INFO_DATA_1;
  CONFIG_INFO_DATA_1 = packed record
    Reserved[0..127] of Byte;
    dwVersion: DWORD;
  end;

implementation

end.
  Mit Zitat antworten Zitat