webForumDet fria alternativet

C++ integer till VB sträng

2 svar · 243 visningar · startad av Viktor

ViktorMedlem sedan aug. 20021 752 inlägg
#1

Jag har sparat ner en integer till en fil från ett c++ program med hjälp av denna kod

int iTest;
WriteFile(hFile,(char*)&iTest,NULL,NULL);

och jag vill nu läsa denna fil från ett VB program och skriva ut värdet som står i filen. Hur gör jag det? Värdet står ju inte som klartext utan som en 4 bytes integer.

EDIT: Det är inte VB utan VB Script för Windows Script Host.

/Viktor

nikoMedlem sedan juni 20022 599 inlägg
#2

Med reservation för att byte-ordningen kanske är annorlunda och att min hjärna inte riktigt funkar idag, men typ:

   Const ForReading = 1
   Set fso = CreateObject("Scripting.FileSystemObject")
   Set f = fso.OpenTextFile("dinfil.txt", ForReading)
   str = f.Read(4)
   tal= asc(mid(str,1,1))*256^3 + asc(mid(str,2,1))*256^2 + asc(mid(str,3,1))*256 + asc(mid(str,4,1))
   WScript.Echo "Talet är: " & tal

Borde det väl bli?

ViktorMedlem sedan aug. 20021 752 inlägg
#3

Borde det väll bli?

Visst fungerar det! Tack!

Behövda ändra på lite, byte ordningen och deklarera variabler

Dim str
Dim tal
Dim fso
Dim f
Const ForReading = 1
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.OpenTextFile("I:\keystrokes.dat", ForReading)
str = f.Read(4)
tal= Asc(Mid(str,1,1)) + Asc(Mid(str,2,1))*256 + Asc(Mid(str,3,1))*256^2 + Asc(Mid(str,4,1))*256^3
GetKeyStrokes = tal

/Viktor

132 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)