slawek635
14.03.2006, 15:17:42
Witam,
Napisałem sobie własną bibloteke dll. Jest to kod w Delphi. Skompilowałem i podstawiłem do /php/ext. Po wywołaniu tej funkcji z poziomu php nie działa. Oczywiście z poziomu innych programów funkcja w tej bibliotece jest widziana i działa ale nie w php.
Czy trzeba jeszcze gdzieś dodatkowo skonfigurować php ?
Może ktoś kiedyś próbował własną Dll podłączyć i miał podobny problem ?
<?php
print AddBackSlash("123");
?>
--------------------------------------------------------------------
library xxx;
uses
SysUtils, Classes;
type
TErrorToLongString = class(Exception);
function AddBackSlash(var s: ShortString): ShortString;
begin
Result:= '';
if Length(s) = 255 then
raise TErrorToLongString.Create('Za długi string!');
if s[Length(s)] <> '\' then
Insert('\', s, Length(s) + 1);
Result:= s
end;
exports
AddBackSlash name 'AddBackSlash';
begin
end.
Pozdrawiam
Sławomir Gruszka
slawek635
14.03.2006, 15:24:54
Witam,
Prawdę muwiądz jestem specjalistą w pisaniu programów w Delphi, Ale trafiła mi się do napisania aplikacja w php i dlatego mam taki problem. W C++ mało pisze a w sumie niewiele. Ale z tego co wiem to bibloteka Dll powinna działać wszędzie tak samo.
Pozdrawiam
Sławomir Gruszka
kszychu
14.03.2006, 15:27:04
Zaraz, zaraz... Co robi ten dll? Bo może da sięto napisać w samym php, bez użycia dodatkowych bibliotek.
splatch
14.03.2006, 15:28:32
W pliku php.ini musisz dodać linię extension = twoj.dll albo włączyć plik poprzez funkcję
dl" title="Zobacz w manualu php" target="_manual.
dodaje
\ na koncu stringa
s (nie dluzszego niz 255 znakow).... zwraca string, albo wywala blad
<?php
function AddBackSlash($s) {
return false
};
if (substr($s, -1, 1) != "\\") { $s .= "\\";
}
return $s
}
?>
slawek635
14.03.2006, 15:31:55
Witam,
Gryps jest w tym że mam napisanych ze 200 funkcji i teraz to przerabiać na php to lekka poraszka.
Taki jest błąd.
Fatal error: Call to undefined function AddBackSlash() in C:\serwer\strony\www\Agencja reklamowa\Index.php on line 2
Żecz w tym że zależy mi na podłączeniu swojej bibloteki do php, nie jest istotne co robi ta funkcja.
Tak wpisałem tu "extension = twoj.dll " ale nic z tego.
Dlatego tak się zastanawiam co jest nie tak.
Pozdrawiam
Sławomir Gruszka
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.