🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.bazy-danych.msaccess
Article #137295

Re: Excel x64 i API

#137295
From: Zbigniew Bratko
Date: Sun, 06 Nov 2016 14:56
85 lines
3476 bytes
W dniu 2016-11-05 o 11:00, Adam pisze:


> Witajcie.
>
> Grupa office jest na intensywnej terapii ;) więc piszę tu.
>
> Problem:
> Jest sobie API, aby sobie z zewnątrz "wtykać" dane do aplikacji (program
> do obsługi firmy).
>
> Najprostsze zastosowanie: arkusz kalkulacyjny i dopisywanie nowych
> towarów, nowych kontrahentów, rejestrów zakupu, itp.
>
> Jak jest Excel 32bit, to wszystko ok - działa chyba od Excela 2000 do
> aktualnych.
>
> Ale problem jest z Excelem w wersji 64 bit.
> Zmieniam deklaracje z "Declare Function" na "Declare PtrSafe Function" -
> przestają się świecić na czerwono.
> Teoretycznie powinno wystarczyć - no, może jeszcze takie "udziwnienia",
> jak zamiast Long to LongLong.


Nieopatrznie wysłałem na priv, więc tym razem wysyłam na grupę.

No ładne udziwnienie
Możesz użyć jeszcze bardziej udziwnionego typu LongPtr i ew. stałej 
kompilacji warunkowej VBA7 lub (i)  Win64.

To tak jakbyś przesiadając się z daaawnego Windows 16bit na Windows 
32bit powiedział, że np. uchwyt, wskaźnik itp. trzeba zadeklarować jako 
"udziwniony typ" Long, zamiast starego, dobrego typu Integer.


> Ale pojawia się okienko Microsoft Visual Basic:
> Run-time error '48':
> File not found: cdn_api.dll

> Wspomniana DLL-ka jest, jest w ścieżce w zmiennej %path%, inne programy
> korzystają z niej prawidłowo.

A spróbuj skopiować tą dll'kę do folderu C:\Windows\System32.

> Co jeszcze Microsoft zepsuł w Excelu 64-bit?  ;)

Mam podobne odczucia.
Co jeszcze Microsoft zepsuł w Accessie 64-bit ?

Ja nie mogę załadować biblioteki FreeImage.dll w wer. 64bit.
Ani z domyślnego folderu C:\Windows\System32, ani przy użyciu funkcji 
API LoadLibrary, która zwraca błąd Err.LastDllError = 126

---------------------------
Microsoft Access
---------------------------
Nie można odnaleźć określonego modułu.


Ale kiedy folderze C:\Windows\System32 podmienię 64-bitową dll-kę, na 
nieprawidłową (32-bitową), to dll-ka jest znajdowana i dostaję 
prawidłowy komunikat błędu Err.LastDllError = 193


---------------------------
Microsoft Access
---------------------------
%1 nie jest prawidłową aplikacją systemu Win32.


No cóż, może dlatego M$ zaleca stosowanie Office 32bit:
https://support.office.com/pl-pl/article/Wyb%C3%B3r-64-bitowej-lub-32-bitowej-wersji-pakietu-Office-2016-2dee7807-8f95-4d0c-b5fe-6c6f49b8d261

No i ZONK !!!

[...]

Być może wina leży po obu stronach M$ oraz autorów dll-ki


-- 
Pozdrowienia
BraZby
www.faq.accdb.pl
www.accdb.pl
Technical Details
Message-ID: <nvnga9$7uj$1@node2.news.atman.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.POSTED!not-for-mail
References: <nvkakl$s4m$1@usenet.news.interia.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.POSTED!not-for-mail
From: Zbigniew Bratko <byle@co.pl>
Newsgroups: pl.comp.bazy-danych.msaccess
Subject: Re: Excel x64 i API
Date: Sun, 6 Nov 2016 15:56:08 +0100
Organization: ATMAN - ATM S.A.
Lines: 85
Message-ID: <nvnga9$7uj$1@node2.news.atman.pl>
References: <nvkakl$s4m$1@usenet.news.interia.pl>
NNTP-Posting-Host: 37.248.153.148
Mime-Version: 1.0
X-Trace: node2.news.atman.pl 1478444169 8147 37.248.153.148 (6 Nov 2016 14:56:09 GMT)
X-Complaints-To: usenet@atman.pl
NNTP-Posting-Date: Sun, 6 Nov 2016 14:56:09 +0000 (UTC)
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.4.0
In-Reply-To: <nvkakl$s4m$1@usenet.news.interia.pl>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit