delphi+access+autorun
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
delphi+access+autorun
Merhaba arkadaşlar,
delphi ve access te hazırlamış olduğum bi projem var. access e bağlanırken ADO ile bağlandım. ve bu projeyi cd ye takar takmaz autorun yapmam lazım. bende "giris.exe" ve veri tabanımı alıp cd ye attım. bide autorun.inf dosyası hazırladım. cd yi takar takmaz autorun.inf dosyası çalışıyor. fakat veritabanı şu an kullanımda die hata veriyor bana. daha sonra giris.exe yi açıyor. fakat veritabanıyla alakalı olan yerleri çalıştırmıyor. bunu nasıl düzeltebilirim?
herkese ii çalışmalar
kolay gelsin.
delphi ve access te hazırlamış olduğum bi projem var. access e bağlanırken ADO ile bağlandım. ve bu projeyi cd ye takar takmaz autorun yapmam lazım. bende "giris.exe" ve veri tabanımı alıp cd ye attım. bide autorun.inf dosyası hazırladım. cd yi takar takmaz autorun.inf dosyası çalışıyor. fakat veritabanı şu an kullanımda die hata veriyor bana. daha sonra giris.exe yi açıyor. fakat veritabanıyla alakalı olan yerleri çalıştırmıyor. bunu nasıl düzeltebilirim?
herkese ii çalışmalar
kolay gelsin.
... biraz kibar olalım. mege
tearsın söyledikleri doğru. access çalışırken, bulunduğu klasöre ldb uzantılı bir geçici dosya oluşturur. e tabi read only bir cdye bunu oluşturamayacağı için, access veritabanı cd den çalışmaz. bunun için tearsın söylediği çözüm doğru. eğer setupsız basit bir program düşünüyorsan, programın başlangıcında veritabanı dosyasını c ye kopyalatırsın. sonra kodun devamında, kopyaladığın yerden çalışmasını sağlarsın. her seferinde kopyalamaya çalışmaması için önce bir kontrol satırı yazmalısın elbette.
tearsın söyledikleri doğru. access çalışırken, bulunduğu klasöre ldb uzantılı bir geçici dosya oluşturur. e tabi read only bir cdye bunu oluşturamayacağı için, access veritabanı cd den çalışmaz. bunun için tearsın söylediği çözüm doğru. eğer setupsız basit bir program düşünüyorsan, programın başlangıcında veritabanı dosyasını c ye kopyalatırsın. sonra kodun devamında, kopyaladığın yerden çalışmasını sağlarsın. her seferinde kopyalamaya çalışmaması için önce bir kontrol satırı yazmalısın elbette.

-
- Kıdemli Üye
- Mesajlar: 574
- Kayıt: 01 Şub 2004 12:29
- Konum: Erdemli - MERSİN
http://www.delphicorner.f9.co.uk/articles/db12.htm
bu adreste CD deki bir Paradox veri tabanına nasıl bir erişim yapılır o anlatılıyor . Olayın mantığı anlamak açıdan okuyabilirsiniz .
bu adreste CD deki bir Paradox veri tabanına nasıl bir erişim yapılır o anlatılıyor . Olayın mantığı anlamak açıdan okuyabilirsiniz .
-
- Kıdemli Üye
- Mesajlar: 574
- Kayıt: 01 Şub 2004 12:29
- Konum: Erdemli - MERSİN
Biraz daha dikkat etsen cevap verirken daha iyi olmazmı sence.Arkadaş buraya bir soru sormuş eğer cevap vermek zor geliyorsa cevap verme.bu tavırlar hiç hoş değil.Bu düşünce kendine zarar başkasına değil.GErçekten ne alakası var oğuz hocamın dediği gibi.rockell yazdı:... silindi... mege
tearsın söyledikleri doğru. access çalışırken, bulunduğu klasöre ldb uzantılı bir geçici dosya oluşturur. e tabi read only bir cdye bunu oluşturamayacağı için, access veritabanı cd den çalışmaz. bunun için tearsın söylediği çözüm doğru. eğer setupsız basit bir program düşünüyorsan, programın başlangıcında veritabanı dosyasını c ye kopyalatırsın. sonra kodun devamında, kopyaladığın yerden çalışmasını sağlarsın. her seferinde kopyalamaya çalışmaması için önce bir kontrol satırı yazmalısın elbette.
***********************************
Kamil odur ki; koya dünyada bir eser,
Eseri olmayanın, yerinde yeller eser.
***********************************
Kamil odur ki; koya dünyada bir eser,
Eseri olmayanın, yerinde yeller eser.
***********************************
küçük bi not : embedded firebird sürümü ile firebird kurmadan programınızla taşıyabilir ve firebirdi readonly medyalarda kullanabilirsiniz.
.-.-.-.-.-.-.-. ^_^
Mrb arkadaşlar
kusura bakmayın daha önce cvp yazamadım. netimiz yoktu. yeni geldi.
bende hemen baktım cvplarınıza.
ilk olarak şunu söyleyim. benim bu projem baya geniş kapsamlı bişey. ve firma hiç bi şekilde kurulumu olmasın diyor. cd ye takar takmaz ben programı çalıştırayım diyor.
ve ben maalesef bu projeye ocak gibi başladım. ve o zaman accessle başladım. bu program bi çok kişiye ulaşacak. herkesin bilgisayarında çalışması için access kullandım. okulda genelde mysql ve oracle ağırlıklı olarak eğitim verdiler. çok fazla bi iş tecrübem de yok. o yüzden de firebird kavramını buraya üye olduğumda duymuştum. ama o sırada çoktan access le başlamıştım işe. ve böyle bi sorunla karşılaşacağımı bilmiyordum. veritabanımda çok fazla kaydım var. firebird nasıl bişey hiç bilmiyorum. ama öğrenirim. firebird e kısaca kopyalamanın yolu varmı? yani tüm kayıtları bi anda oraya atabilirmiyim? yoksa teker teker yazmak zorundamıyım? eğer onları teker teker firebird e aktarırsam baya zamanımı alcak. çünkü o verileri girmek için şirketteki tüm elemanlar uğraştık ve yaklaşık 2-3 haftamızı almıştı. yani eğer öyle bişey yoksa boşu boşuna şu an için zaman kaybetmeyim onunla. fakat bu bana acil olarak lazım. yani bi 2-3 hafta daha beklenilmemesi lazım.
yada dosyayı kopyalıycam c nin altına. daha sonra programdan çıkarken silip çıkacağım.
bide benim görmediğim bazı yazılar yazılmış sanırım. ben ancak girebildim nete. bazı şeyler silinmiş sanırım. o yüzden de görmedim. yazılanlardan anladığım kadarıyla bende bazı şeyler söylemek istiyorum. okulda verilen eğitimle iş hayatı çok farklı(böyle bişeyi söylememe bile gerek yok aslında. sizler benden çok daha fazla tecrübelisiniz. ve böyle bişeyi çok daha ii bilirsiniz.) yani bilgisayar müh olmakla herşeyi öğrenmiş olmuyorum. hatta çoğu şeyi öğrenmemişim bile. bize okulda sadece temelini verdiler. çok fazla uygulama geliştirmedik. sorunlarla karşılaştıkça öğreniyorum bazı şeyleri. ve bu öğrenmemde sizlerin sayesinde oluyor. bu yüzden de birbirimize karşı daha anlayışlı davranırsak daha ii olur die düşünüyorum.
hepinize ii çalışmalar
yardımcı olmaya çalışan herkese çok teşekkür ederim
herkese kolay gelsin.
kusura bakmayın daha önce cvp yazamadım. netimiz yoktu. yeni geldi.
bende hemen baktım cvplarınıza.
ilk olarak şunu söyleyim. benim bu projem baya geniş kapsamlı bişey. ve firma hiç bi şekilde kurulumu olmasın diyor. cd ye takar takmaz ben programı çalıştırayım diyor.
ve ben maalesef bu projeye ocak gibi başladım. ve o zaman accessle başladım. bu program bi çok kişiye ulaşacak. herkesin bilgisayarında çalışması için access kullandım. okulda genelde mysql ve oracle ağırlıklı olarak eğitim verdiler. çok fazla bi iş tecrübem de yok. o yüzden de firebird kavramını buraya üye olduğumda duymuştum. ama o sırada çoktan access le başlamıştım işe. ve böyle bi sorunla karşılaşacağımı bilmiyordum. veritabanımda çok fazla kaydım var. firebird nasıl bişey hiç bilmiyorum. ama öğrenirim. firebird e kısaca kopyalamanın yolu varmı? yani tüm kayıtları bi anda oraya atabilirmiyim? yoksa teker teker yazmak zorundamıyım? eğer onları teker teker firebird e aktarırsam baya zamanımı alcak. çünkü o verileri girmek için şirketteki tüm elemanlar uğraştık ve yaklaşık 2-3 haftamızı almıştı. yani eğer öyle bişey yoksa boşu boşuna şu an için zaman kaybetmeyim onunla. fakat bu bana acil olarak lazım. yani bi 2-3 hafta daha beklenilmemesi lazım.
yada dosyayı kopyalıycam c nin altına. daha sonra programdan çıkarken silip çıkacağım.
bide benim görmediğim bazı yazılar yazılmış sanırım. ben ancak girebildim nete. bazı şeyler silinmiş sanırım. o yüzden de görmedim. yazılanlardan anladığım kadarıyla bende bazı şeyler söylemek istiyorum. okulda verilen eğitimle iş hayatı çok farklı(böyle bişeyi söylememe bile gerek yok aslında. sizler benden çok daha fazla tecrübelisiniz. ve böyle bişeyi çok daha ii bilirsiniz.) yani bilgisayar müh olmakla herşeyi öğrenmiş olmuyorum. hatta çoğu şeyi öğrenmemişim bile. bize okulda sadece temelini verdiler. çok fazla uygulama geliştirmedik. sorunlarla karşılaştıkça öğreniyorum bazı şeyleri. ve bu öğrenmemde sizlerin sayesinde oluyor. bu yüzden de birbirimize karşı daha anlayışlı davranırsak daha ii olur die düşünüyorum.
hepinize ii çalışmalar
yardımcı olmaya çalışan herkese çok teşekkür ederim
herkese kolay gelsin.
-
- Üye
- Mesajlar: 46
- Kayıt: 25 May 2005 09:08
- Konum: izmir
Access dan firebird e aktarım için delphi de gelen databump programını kullanabilirsin.
İlk önce firebirdde ilgili tabloları oluşturman gerekir ve birazda firebird ü anlamalısın. Kolay olmaz, bu işlemlerin ne kadar sürecegi senin firebird e ne kadar zamanda uyum saglayacagına baglı.
Firebird tek bir dll ile dosyana erişmeni saglayabilir. Bu açıdan kurulum derdi olmaz. Veritabanına erişirken kullandıgın bazı bileşenleri yeni baştan düzenlemen gerekebilir.
İlk önce firebirdde ilgili tabloları oluşturman gerekir ve birazda firebird ü anlamalısın. Kolay olmaz, bu işlemlerin ne kadar sürecegi senin firebird e ne kadar zamanda uyum saglayacagına baglı.
Firebird tek bir dll ile dosyana erişmeni saglayabilir. Bu açıdan kurulum derdi olmaz. Veritabanına erişirken kullandıgın bazı bileşenleri yeni baştan düzenlemen gerekebilir.
http://www.xtramania.com/Documentation/ ... AQs/Cdrom/Yes, ADO (and ADOxtra) can use Access databases stored on read only media (network shares or CD-ROMs).
Be sure to use correct connection string to open a database from read only media. The problem may arise due to a way how Jet provider stores information about database locking. Usually it creates a file near the database itself. So if requested sharing mode requires such file, ADO will try to create it and will fail to create a file on the CD-ROM or other read-only media.
For example, if NT folder permissions for D:\Temp\ are set to read only and
if you use following connection string:
"Provider=Microsoft.Jet.OLEDB.4.0; Data Source=D:\Temp\TestDB.mdb; Mode=Read"
It fails with a error saying that it cannot create locking file. For sure it
cannot do it on CD-ROM. Using Mode=Read usually opens database in shared mode for reading data. It will not work on CD-ROM.
If you use connection string without any Mode property settings:
"Provider=Microsoft.Jet.OLEDB.4.0; Data Source=D:\Temp\TestDB.mdb"
connection opens successfully even from read only media. If you check then the default settings of a mode property for an opened connection:
put cnn.Mode
it tells you that it is 13=1+12 (Read and Share Exclusive)
So if you use:
"Provider=Microsoft.Jet.OLEDB.4.0; Data Source=D:\Temp\TestDB.mdb; Mode=Read|Share Exclusive"
it opens successfully again.
So, to open database from read only media, you may skip Mode property in the connection string. It should open correctly by default. Note: the default behavior might change from ADO version to version. So it is usually better to explicitly specify the access mode.
.-.-.-.-.-.-.-. ^_^



merhaba arkadaşlar
program autorun olarak çalıştı en sonunda.

database i readonly olarak ayarladım. ve delphide derlerken o şekilde derledim. daha sonra readonly databasemi ve exe mi attım cdye.
o da otomatik olarak çalıştı.

yardımcı olmaya çalışan herkese çoooooooook tşk edeirm
herkese ii çalışmalar...