Zum Inhalt springen

NamedPipe


maddin

Empfohlene Beiträge

hallöle,

ich hätte ganz gerne mal eine auskunft. und zwar kann es sein, das man in eine NamedPipe nur eine bestimmte anzahl zeichen schreiben kann ??? habe hier nämlich ein programm, wo zur zeit ca. 38000 zeichen auf einmal reingeschrieben werden sollen und das läuft nicht ganz zufriedenstellend. die zeichen werden nämlich nur in blöcken 1618 zeichen gelesen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Wie erstellst du die Pipe auf beiden Seiten?

Bei CallNamedPipe zum Bleistift musst du ja

die Puffergröße angeben.

Poste doch mal einen Sourcecode-Auszug, vielleicht

wird's dann einfacher das problem zu finden.

<FONT COLOR="#a62a2a" SIZE="1">[ 31. August 2001 17:29: Beitrag 1 mal editiert, zuletzt von MadMatrix ]</font>

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 2 Wochen später...

entschuldigt, das es ein wenig länger gedauert hat. ich habe den code in der firma musste aber letzte woche in die schule *schlaf*. hier aber sind die auszüge:


// NamedPipe for Output erzeugen

hPipe = CreateNamedPipe("\\\\.\\pipe\\rawdata", //this machine

PIPE_ACCESS_OUTBOUND,

PIPE_TYPE_MESSAGE | PIPE_WAIT, 

10,

ANZ_SCANS * REPLY_LEN + 1,

ANZ_SCANS * REPLY_LEN + 1,

10000,		// timeout in millseconds

NULL);		// security descriptor


// start PipeClient

STARTUPINFO startup;

GetStartupInfo (&startup);

strcpy (startup.lpTitle, "PipeClient");

CreateProcess (

"D:\\Visual Studio Projekte\\PipeClient\\Release\\PipeClient.exe",

"",

NULL,

NULL,

TRUE,

CREATE_NEW_CONSOLE,

NULL,

NULL,

&startup,

&m_hPipeClient );


// connectt to the pipe and wait for the client

SetEvent (m_hPipeReady);

while ( !ConnectNamedPipe(hPipe, NULL));

m_StatusOfScanning = 2;


// Write to Pipe

DWORD count;

WriteFile(sonar->hPipe, 

sonar->m_daten,

ANZ_SCANS * REPLY_LEN,

&count,

NULL);


// try to connect to the server pipe

hPipe = CreateFile("\\\\.\\pipe\\rawdata", // this machine 

GENERIC_READ,

0,

NULL,

OPEN_EXISTING,

FILE_ATTRIBUTE_NORMAL,

(HANDLE) NULL );


// reading from pipe

ReadFile(hPipe,

buffer,

sizeof(buffer),

&count,

NULL);

ich hoffe, das das ein wenig hilft. achja vielleicht noch ein paar infos

ANZ_SCANS = 33

REPLY_LEN = 1158

ANZ_SCANS * REPLY_LEN = 38214

<FONT COLOR="#a62a2a" SIZE="1">[ 10. September 2001 10:00: Beitrag 1 mal editiert, zuletzt von maddin ]</font>

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...