We help IT Professionals succeed at work.

How to write into data blok into Siemens PLC

pr2501
pr2501 asked
on
Medium Priority
683 Views
Last Modified: 2013-11-10
With next code i'm trying to write in the Data Blok 11 into first byte. But i have no sauces. Can you help me to resolve the error.

Best regards
function DB_write ( dbno:Integer;dwno:Integer;var amount:Integer;var buffer):Integer;stdcall;
 
 
function DB_write;external 'w95_s7m.dll' name 'db_write';
 
 
procedure Tform1.writePLC();
var
ammount1: Integer;
buffmy: Word;
begin
ammount1 := 1;
buffMY:= 1 ;
DB_read(11, 0, ammount1, buffmy);
end;

Open in new window

Comment
Watch Question

Bill BachPresident and Btrieve Guru
CERTIFIED EXPERT

Commented:
Not my field, but I have an obvious suggestion:  Change DB_read to db_write.

Author

Commented:
thank you

It's ok now.

Just..
Can you help me for the nexyt problem:
When i close app. And start agin i have next mesage:

First chance exception at $7C812AFB. Exception class EOleException with message 'Cannot expand named range'. Process Project1.exe (3248)

After clicking on continue, i get mesage error (attached picture) and after clicking on ok  it starts and it works normaly.
I need to avoid this interuption.

canexpand.JPG

Author

Commented:
Some explanations more:

I need to close my app, because i'm  writeing new values into buffer by changing variables into Delphi IDE. After restarting my app again and with clicking on speed button i'm writing (calling procedure for write)  . And then that error appears:
Cannot expand named range
President and Btrieve Guru
CERTIFIED EXPERT
Commented:
Unlock this solution and get a sample of our free trial.
(No credit card required)
UNLOCK SOLUTION
Unlock the solution to this question.
Thanks for using Experts Exchange.

Please provide your email to receive a sample view!

*This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

OR

Please enter a first name

Please enter a last name

8+ characters (letters, numbers, and a symbol)

By clicking, you agree to the Terms of Use and Privacy Policy.