Arama butonu
Bu konudaki kullanıcılar: 1 misafir, 1 mobil kullanıcı
4171
Cevap
168152
Tıklama
3
Öne Çıkarma
Cevap: C/C++/C# Sorularınız Buraya. . .(GÜNCEL) (68. sayfa)
M
12 yıl
Yüzbaşı

Arkadaşlar, c++'ta bir sorum olacak.
 
int fonksiyon(int* dizi,int a,int b)
{
for(int i=0;i<5;i++)
{
dizi[i]=i;
}
cin>>a>>b;
}

int fonksiyon2()
{

}

Koddaki gibi oluşturduğum değerleri diğer bir fonksiyonda nasıl kullanabilirim? Pointerları bir türlü kavrayamadım. Mesela fonksiyon2 adında bir fonksiyon oluşturdum ve bunda ilk fonksiyondaki diziyi ve a,b değerlerini aynen kullanmak istiyorum. Nasıl yapabilirim?


Bu mesaja 2 cevap geldi.
X
12 yıl
Er

c++ builder 6 kullanıyorum

edit1----mevcut şifre
edit2---yeni şifre
edit3---yeni şifre tekrar
edit4--- kullanıcı adı

kullanici adlı tablomda k_adi ve parola olarak tanımladığım iki alanım var . kullanıcının şifresini değiştirmeye calısıyorum ama olmuyor yanlışım nerde acaba ?
void __fastcall TForm6::Button1Click(TObject *Sender) 
{
if(Edit2->Text=="" || Edit3->Text=="")
{
ShowMessage("Lütfen yeni parolanızı giriniz.Parola boş olamaz.");
return;
}
else if(Edit2->Text!=Edit3->Text)
{
ShowMessage("Parola ve parola tekrarı aynı değil, lütfen düzeltiniz.");
return;
}

String sql="SELECT * FROM kullanici WHERE parola='"+Edit1->Text+"'WHERE k_adi='"+Edit4->Text+"'";



MyQuery1->SQL->Clear();
MyQuery1->SQL->Add(sql);
MyQuery1->Execute();
if(MyQuery1->RecordCount<1)
{
ShowMessage("Mevcut kullanici adi veya parola yanlış.");
return;
}

sql="UPDATE kullanici SET parola='"+Edit2->Text+"' WHERE k_adi='"+Edit4->Text+"'";

//ShowMessage(sql);
MyQuery1->SQL->Clear();
MyQuery1->SQL->Add(sql);
MyQuery1->Execute();
ShowMessage("Parolanız başarıyla değiştirilmiştir.");
}


Bu mesaja 1 cevap geldi.
S
12 yıl
Teğmen

ya arkadşlar şimdi şöyle bişey var benim bi program yazmam lazım. program her çift sayının kaç farklı asal sayı ikilisinin toplamı şeklinde yazılacağını hesaplayacak. örnek vermek gerekirse;
4 = 2 + 2 (demekki 4 sayısı 1 farklı şekilde yazılabiliyor)
6 = 3 + 3(6 sayısı 1 farklı şekilde yazılabiliyor)
8 = 5 + 3(1 farklı şekilde yazılabiliyor)
10 = 3 + 7 = 5 + 5(10 sayısı 2 farklı şekilde yazılabiliyor)

program bu şekilde 4 den başlayarak her çift sayının kaç farklı asal sayı ikilisinin toplamı şeklinde yazılabileceğini ekrana yazıcak
4 - 1 farklı
6 - 1 farklı
8 - 1 farklı
10 - 2 farklı

programlama dili c++


Bu mesaja 2 cevap geldi.
M
12 yıl
Binbaşı

Arkadaşlar C# ile Hastane otomasyonu yapıyorum fakat takıldığım bir nokta var Hide, Close komutları ile Form1'den Form2'ye geçiş sağlıyorum ardından Form2'yi tamamen kapatıp Form1'e dönebiliyorum ama ilk geçiş yaptığım Form1 kapanmıyor arkaplanda çalışıyor bunu nasıl çözebilirim ?
Kodlar:
Form1'den Form2'ye geçiş butonu.
private void button3_Click(object sender, EventArgs e)
{
Form2 f2 = new Form2();
f2.Show();
this.Hide();
}

Form2'den Form1'e dönüş butonu.
private void button3_Click(object sender, EventArgs e)
{
Form1 f1 = new Form1();
this.Dispose();
f1.Show();
}
Buradaki Dispone'i Form1'den 2'ye geçerken kullanamıyorum 1 kapandığı için 2'de gösterilmeden otomatik olarak kapatılıyor.



E
12 yıl
Teğmen

quote:

Orijinalden alıntı: selamolsunbolubeyine

ya arkadşlar şimdi şöyle bişey var benim bi program yazmam lazım. program her çift sayının kaç farklı asal sayı ikilisinin toplamı şeklinde yazılacağını hesaplayacak. örnek vermek gerekirse;
4 = 2 + 2 (demekki 4 sayısı 1 farklı şekilde yazılabiliyor)
6 = 3 + 3(6 sayısı 1 farklı şekilde yazılabiliyor)
8 = 5 + 3(1 farklı şekilde yazılabiliyor)
10 = 3 + 7 = 5 + 5(10 sayısı 2 farklı şekilde yazılabiliyor)

program bu şekilde 4 den başlayarak her çift sayının kaç farklı asal sayı ikilisinin toplamı şeklinde yazılabileceğini ekrana yazıcak
4 - 1 farklı
6 - 1 farklı
8 - 1 farklı
10 - 2 farklı

programlama dili c++



Her basliga ayni cevabi yazmissin ? Hayirdir QBASIC ile derdin mi, var ?
Sadece bu yorumlari yazmak icin mi, uye oldun siteye ?
ne iciyorsun ? yardim almak icin baslik acmissin da diger konularda niye hem insanlari yaniltip hem de dalga geciyorsun ? Yas kac ?

Arduino Uno Proje Yardım -> eğer qbasic öğrenirsen istediğin herşeyi yapabilirsin. internette qbasic die aratırsan kaynaklar bulabilirsin
c#'ta label veya pictureBox'u yan çevirmek varmı ? -> bu gibi görsel işleri c# yerine qbasic de yapmalısın. bence hemen qbasic öğrenmeye başla
Matlab -> google a matlab yaz kendi orjinal sitesi çıkar zaten. ordan indirebilirsin. fiyatı ne kadar bilmiyorum biraz pahalı olabilir. matlab yerine qbasic öğrenirsen daha akıllıca bir iş yapmış olursun,
c# kaynak -> bence c# yerine qbasic öğren. zararın neresinden dönsen kardır.

Programcılığa başlamak ->
iyi dinle şimdi.
gidip java öğren sonra android öğren sonra da gidip iş ara.bulursan bana da söle bende gelem :D
1000lira + yemek ücretine çalışırım. sabah 8 aksam 7 uygundur benim için.

Programlamaya başlıyorum ->
arkadaşım kesinlikle assembly den başlamalısın. hem temelden almış olursun :D yavaş yavaş ilerlersin.


Cevap: C/C++/C# Sorularınız Buraya. . .(GÜNCEL) ->
ya arkadşlar şimdi şöyle bişey var benim bi program yazmam lazım. program her çift sayının kaç farklı asal sayı ikilisinin toplamı şeklinde yazılacağını hesaplayacak. örnek vermek gerekirse;
4 = 2 + 2 (demekki 4 sayısı 1 farklı şekilde yazılabiliyor)
6 = 3 + 3(6 sayısı 1 farklı şekilde yazılabiliyor)
8 = 5 + 3(1 farklı şekilde yazılabiliyor)
10 = 3 + 7 = 5 + 5(10 sayısı 2 farklı şekilde yazılabiliyor)

program bu şekilde 4 den başlayarak her çift sayının kaç farklı asal sayı ikilisinin toplamı şeklinde yazılabileceğini ekrana yazıcak
4 - 1 farklı
6 - 1 farklı
8 - 1 farklı
10 - 2 farklı

programlama dili c++


Bu mesaja 1 cevap geldi.
K
12 yıl
Binbaşı

İyi günler,
Yazdığım XOX oyununa yapay zeka eklemek istiyorum. Ancak ne şekilde yapabileceğimi tam olarak çözemedim.
Aklıma gelen tek yöntem benim belirlediğim senaryoları test ederek yapay zekanın ona göre "O" koyması.
Sadece mantık söylerseniz yada basit bi algoritma kurarsanız çok makbule geçer.
Teşekkürler


#include<stdio.h> 
int sira=1,sa,su; //kullanicidan koordinat alirken sa ve su kullanilacak..
char kazanan; //Kontrol fonkisyonu kazanan kisi olursa döndürdüğü X veya O değeri kazanan değişkenine atanicak.
int ekran[3][3]={1,1,1, 1,1,1, 1,1,1}; //3x3 alanımız için kullanılacak matris.
//x icin 2 y icin 3 degeri atanir.

char kontrol(); //kontol fonksiyonu prototipi(70-98. Satır)

void yaz() //ekran dizisindeki değerleri
{

int sat,sut; //satir ve sutunlari yazdirmak icin degiskenleri atiyoruz.
system("CLS"); //Ekrani siliyoruz
printf("\t \t \t1 \t2 \t3 \n\n\n\n\n"); //Satranç tahtası gibi sayılar yazdırıyoruz. En üste 1,2,3 yazdırıyor.
for(sat=0;sat<3;sat++){
printf("\t\t %d \t", sat + 1); // 14. satirdaki islemi sol tarafa uyguluyoruz.
for(sut=0;sut<3;sut++){
if(ekran[sat][sut]==1) printf("* \t"); //kullanicinin veri atamadigi yere * konuyor.
if(ekran[sat][sut]==2) printf("X \t"); //kullanicinin X koyduğu yere X koyuyor.
if(ekran[sat][sut]==3) printf("O \t"); //kullanicinin Y koyduğu yere Y koyuyor.
}
printf("\n\n\n\n");

}

}

void oku() //Kullanicidan konum okuyan fonksiyon
{
tekrarlama: //Eğer zaten bir X veya O nun girildiği yere kullanici atama yaparsa tekrar değer alınır.
if(sira%2==1)
{
printf("X konumu giriniz : ");
scanf("%d%d",&sa,&su); //satiri sa degiskenine sutunu su degiskenine atiyor.
if(ekran[sa-1][su-1]==2||ekran[sa-1][su-1]==3) goto tekrarlama; //Eğer zaten deger atanmis yere kullanici
// bir daha X veya Y koymaya kalkarsa oku fonksiyonunun basina gidiliyor.

else ekran[sa-1][su-1]=2; //Eğer girilen yer boşsa X konuluyor

}
else if(sira%2==0)
{
printf("O konumu giriniz : ");
scanf("%d%d",&sa,&su);
if(ekran[sa-1][su-1]==2||ekran[sa-1][su-1]==3) goto tekrarlama;
ekran[sa-1][su-1]=3;
}
}


int main()
{
yaz(); //Programin basinda tumuyle bos tahtamiz ekrana yazdiriliyor.
while(sira<=9) //döngü 9 defa tekrar ediyor.
{
oku(); //Kullanicidan konum aliniyor.
yaz(); //Tahta tekrar yazdiriliyor.
kazanan=kontrol(); //Kazana varmi diye kontrol ediliyor.
if(kazanan=='X') break; //kazanan var ise döngüden cikiliyor.
else if(kazanan=='O') break;
sira+=1;
}
printf("Oyun bitti");
if(kazanan=='X') printf("\nX kazandi.\a\2\n\n");
else if(kazanan=='O') printf("\nO kazandi.\a\2\n\n");
else printf("\n Berabere.\a\1\n\n");

system("pause");
return 0;
}

char kontrol()
{
if(ekran[0][0]==2&&ekran[0][1]==2&&ekran[0][2]==2) return 'X';//üst taraf soldan saða
else if(ekran[1][0]==2&&ekran[1][1]==2&&ekran[2][2]==2) return 'X';//orta taraf soldan saða
else if(ekran[2][0]==2&&ekran[2][1]==2&&ekran[2][2]==2) return 'X';//alt taraf soldan saða


else if(ekran[0][0]==2&&ekran[1][0]==2&&ekran[2][0]==2) return 'X';//Sol taraf yukardan aþaðý
else if(ekran[0][1]==2&&ekran[1][1]==2&&ekran[2][1]==2) return 'X';//Orta taraf yukardan aþaðý
else if(ekran[0][2]==2&&ekran[1][2]==2&&ekran[2][2]==2) return 'X';//sað taraf yukarýdan aþaðý

else if(ekran[0][0]==2&&ekran[1][1]==2&&ekran[2][2]==2) return 'X';//soldan saða çapraz
else if(ekran[0][2]==2&&ekran[1][1]==2&&ekran[2][0]==2) return 'X';//saðdan sola çapraz

//O kazanma durumu

if(ekran[0][0]==3&&ekran[0][1]==3&&ekran[0][2]==3) return 'O';//üst taraf soldan saða
else if(ekran[1][0]==3&&ekran[1][1]==3&&ekran[2][2]==3) return 'O';//orta taraf soldan saða
else if(ekran[2][0]==3&&ekran[2][1]==3&&ekran[2][2]==3) return 'O';//alt taraf soldan saða


else if(ekran[0][0]==3&&ekran[1][0]==3&&ekran[2][0]==3) return 'O';//Sol taraf yukardan aþaðý
else if(ekran[0][1]==3&&ekran[1][1]==3&&ekran[2][1]==3) return 'O';//Orta taraf yukardan aþaðý
else if(ekran[0][2]==3&&ekran[1][2]==2&&ekran[2][2]==3) return 'O';//sað taraf yukarýdan aþaðý

if(ekran[0][0]==3&&ekran[1][1]==3&&ekran[2][2]==3) return 'O';//soldan saða çapraz
if(ekran[0][2]==3&&ekran[1][1]==3&&ekran[2][0]==3) return 'O';//saðdan sola çapraz

}


Bu mesaja 1 cevap geldi.
L
12 yıl
Er

arkadaslar end. müh. 1.sınıftayım. bilgisayar programlama dersinde visual studio 2012 görüyoruz.hocamız ödev verdi ve benim yapamadığım sorularım var . Rica etsem yardımcı olabilecek arkadaslar var mı ?

SORUM: 1’den 10’a kadar sayıları kareleri ve küpleri ile beraber listeleyen program.

daha yeni oldugumuz ıcın konularda cok ileriye gidemedik. do loopa kadar gelebildik. Yardım ederseniz sevinirim



G
12 yıl
Yarbay

quote:

Orijinalden alıntı: yasasin.domates

Kullanıcıdan alınan değere göre bir küme oluşturan ve aşağıdaki gibi bir çıktı veren program yazmaya çalışıyorum.
{1, 2, 3} dizisinin alt kümeleri;
{ }
{ 1 }
{ 2 }
{ 3 }
{ 1, 2 }
{ 1, 3 }
{ 2, 3 }
{ 1, 2, 3 }

Diziyi oluşturma ve diziye eleman atama kısmını hallettim ama 2 ve 3 elemanlı alt kümelerini nasıl oluşturacağım çözemedim. 8 elemanlı bir küme olursa 4,5,6,7 elemanlı alt kümelerini de buldurmam gerekiyor. Biraz açıklayabilir misiniz?

Bu konu düşmüş yukarı taşıyalım.

Biraz geç olacak ama bunun güzel bir yöntemi var. Önce bir unsigned değişken oluşturup sıfırlarız.
unsigned int alt = 0;

Bu değişkendeki 1 olan bitler bize sırasıyla altkümeleri verecek. Her seferinde değişkeni 1 arttırıp 1 olan bitlere karşılık gelen küme elemanlarını yazdıracağız. Örneğin küme 3 elemanlı ise bize ilk 3 bit lazım.

Küme = {3,2,1}
alt = 000 = { }
++alt = 001 = {1}
++alt = 010 = {2}
++alt = 011 = {2,1}
++alt = 100 = {3}
++alt = 101 = {3,1}
++alt = 110 = {3,2}
++alt = 111 = {3,2,1}

1 olan bitleri test etmek için değişken uygun bir sayı ile & işlemine sokulur.

unsigned int sayi = 1;
if(alt & sayi) // 0. bit 1

sayi <<= 1;
if(alt & sayi) // 1. bit 1

sayi <<= 1;
if(alt & sayi) // 2. bit 1
...



G
12 yıl
Yarbay

quote:

Orijinalden alıntı: atilkan

İyi günler,
Yazdığım XOX oyununa yapay zeka eklemek istiyorum. Ancak ne şekilde yapabileceğimi tam olarak çözemedim.
Aklıma gelen tek yöntem benim belirlediğim senaryoları test ederek yapay zekanın ona göre "O" koyması.
Sadece mantık söylerseniz yada basit bi algoritma kurarsanız çok makbule geçer.
Teşekkürler


Senin belirlediğin değil bütün senaryoları test etmesi lazım ama her olasılığı test etmek if else ile olacak iş değil. XOX gibi çok sınırlı derinlikteki problemler için olabilir ama devamlı olan oyunlarda bu imkansıza yakın ve hataya çok açık olur.

Peki nasıl olacak dersen board oyunlarında olasılıkları çözmek için minimax ağacı denen bir veri yapısı kullanılır (bunun çeşitleri de var). Ağacın ne kadar derine ineceği belirlenebilir. Derine indikçe işlemci ve bellek ihtiyacı artar ama program daha zeki olur.

Veri yapılarına aşina değil isen önce bağlı liste, ardından ağaçlara dalabilirsin. Çokta zevklidirler.



G
12 yıl
Yarbay

quote:

Orijinalden alıntı: ~H!ddeN

Arkadaşlar, c++'ta bir sorum olacak.
 
int fonksiyon(int* dizi,int a,int b)
{
for(int i=0;i<5;i++)
{
dizi[i]=i;
}
cin>>a>>b;
}

int fonksiyon2()
{

}

Koddaki gibi oluşturduğum değerleri diğer bir fonksiyonda nasıl kullanabilirim? Pointerları bir türlü kavrayamadım. Mesela fonksiyon2 adında bir fonksiyon oluşturdum ve bunda ilk fonksiyondaki diziyi ve a,b değerlerini aynen kullanmak istiyorum. Nasıl yapabilirim?

int fonk2(int *dizi, int a, int b)...

Burada fonk2 içinde dizi de yaptığın her değişiklik orjinal diziyi etkiler çünkü dizinin başlangıç adresi geçirilir ve direkt bu adres üzerinde işlem yapılır. Buna referans ile çağırma denir. a ve b üzerindeki oynamalar ise orjinal a ve b yi etkilemez çünkü bunların adresleri değil sadece sayı değerleri geçirilir. Eğer değişiklik yaptığımda hepsi etkilensin diyorsan hepsinin adresini geçirirsin. Bu durumda fonksiyon başlığı şöyle olacak.

int fonk2(int *dizi, int *a, int *b)...

Çağırırken de
int result = fonk2(dizi, &a, &b);

Eğer & olmadan çağırırsan derleme hatası alırsın çünkü türler uyumsuz. int* != int


Bu mesaja 1 cevap geldi.
M
12 yıl
Yüzbaşı

quote:

Orijinalden alıntı: elektro_gadget

int fonk2(int *dizi, int *a, int *b)...

Çağırırken de
int result = fonk2(dizi, &a, &b);

Eğer & olmadan çağırırsan derleme hatası alırsın çünkü türler uyumsuz. int* != int

Peki fonk2'de neden dizinin başına & işareti koymadık hocam? Teşekkürler bu arada.


Bu mesaja 1 cevap geldi.
T
12 yıl
Er

2- #include<stdio.h>
BÜ # include<conio.h>
MYO main()
isminiz
isminiz
isminiz
MYO
isminiz *10 defa
isminiz
isminiz
MYO
isminiz
isminiz
isminiz


Yukarıdaki çıktıyı SIRASIYLA do-while,while ve for kullanarak yazınız?


acele yardım



G
12 yıl
Yarbay

quote:

Orijinalden alıntı: ~H!ddeN

Peki fonk2'de neden dizinin başına & işareti koymadık hocam? Teşekkürler bu arada.

O kendiliğinden adres çünkü. Dizi isimleri de aslında bir işaretçidir ama içindeki adresler sabittir değişemez farkı bu. Bunları iyi anlamak istiyorsan adres, dizi ve işaretçi konularını tekrar gözden geçirmelisin.


Bu mesaja 1 cevap geldi.
M
12 yıl
Yüzbaşı

quote:

Orijinalden alıntı: elektro_gadget

quote:

Orijinalden alıntı: ~H!ddeN

Peki fonk2'de neden dizinin başına & işareti koymadık hocam? Teşekkürler bu arada.

O kendiliğinden adres çünkü. Dizi isimleri de aslında bir işaretçidir ama içindeki adresler sabittir değişemez farkı bu. Bunları iyi anlamak istiyorsan adres, dizi ve işaretçi konularını tekrar gözden geçirmelisin.

O zaman bu diziye eleman atamak için 2. fonksiyonda dizinin başına * işareti mi koymak gerekiyor direk o adresteki elemanı değiştirmek için?


Bu mesaja 1 cevap geldi.
G
12 yıl
Yarbay

quote:

Orijinalden alıntı: ~H!ddeN

O zaman bu diziye eleman atamak için 2. fonksiyonda dizinin başına * işareti mi koymak gerekiyor direk o adresteki elemanı değiştirmek için?

Evet öyle. dizi ifadesi adresin kendisini verirken *dizi veya dizi[0] o adresteki veriyi temsil eder (dereference). Bu adres ile diğer elemanlara da ulaşılır.

*(dizi + 4) veya dizi[4] dersek bu adresten 4 sonraki elemana ulaşmış oluruz. Dizi elemanlarının bellekte ardarda dizilmesi bu imkanı veriyor. Elemanların bellekte rastgele dağıldığı veri yapılarında bu şekilde erişim olamaz.

Unutmadan a ve b değişkenlerine de aynı şekilde erişiyoruz. fonk2 deki a adresi verir fakat *a o adresteki içeriği. a[0] da doğrudur ama a[1] yanlış çünkü o bölge bizim değil.


Bu mesaja 1 cevap geldi.
M
12 yıl
Yüzbaşı

quote:

Orijinalden alıntı: elektro_gadget

quote:

Orijinalden alıntı: ~H!ddeN

O zaman bu diziye eleman atamak için 2. fonksiyonda dizinin başına * işareti mi koymak gerekiyor direk o adresteki elemanı değiştirmek için?

Evet öyle. dizi ifadesi adresin kendisini verirken *dizi veya dizi[0] o adresteki veriyi temsil eder (dereference). Bu adres ile diğer elemanlara da ulaşılır.

*(dizi + 4) veya dizi[4] dersek bu adresten 4 sonraki elemana ulaşmış oluruz. Dizi elemanlarının bellekte ardarda dizilmesi bu imkanı veriyor. Elemanların bellekte rastgele dağıldığı veri yapılarında bu şekilde erişim olamaz.

Unutmadan a ve b değişkenlerine de aynı şekilde erişiyoruz. fonk2 deki a adresi verir fakat *a o adresteki içeriği. a[0] da doğrudur ama a[1] yanlış çünkü o bölge bizim değil.

Tamamdır hocam çok teşekkürler.


Bu mesaja 1 cevap geldi.
K
12 yıl
Yüzbaşı

Arkadaşlar bir konuda yardımınıza ihtiyacım var

Db lı bır uygulama hazırlıyorum.Veritabanı dosyamı Projem >> Bin >> Debug klasorunun içersine (.exe dosyasının yanına) yerleştirdim ve form içersinde

Veritabanı dosya adım :muhammed.accdb
Dosyanın Dizini: Projem>> bin >> debug >> muhammed.accdb

quote:

OleDbConnection bag = new OleDbConnection("Provider=Microsoft.Ace.OleDb.12.0;Data Source=muhammed.accdb");


Şeklinde kullanıyorum.Visual studio 2012 den Start Debug edınce uygulama sorunsuz calsıyıor.

Peki bu uygulamayı bır baska bılgısayarda açmayı denesem Data source yolunu değiştirmeme gerek var mı?

Bazı forumlarda şoyle bir yazım türü yapılmış
quote:

OleDbConnection bag = new OleDbConnection("Provider=Microsoft.Ace.OleDb.12.0;Data Source=|DataDirectory|\muhammed.accdb");

Bu gösterim ile benım yapıgım gosterımın farkı nedir?Programın farklı bilgisayarlardada veritabanıyla sorunsuz calısabılmesı ıcın hangısını kullanmalıyım ?


Teşekkür ederim ,





< Bu mesaj bu kişi tarafından değiştirildi Koyuncu332 -- 22 Mart 2013; 0:07:44 >
Bu mesaja 1 cevap geldi.
A
12 yıl
Yüzbaşı

quote:

Orijinalden alıntı: Koyuncu332

Arkadaşlar bir konuda yardımınıza ihtiyacım var

Db lı bır uygulama hazırlıyorum.Veritabanı dosyamı Projem >> Bin >> Debug klasorunun içersine (.exe dosyasının yanına) yerleştirdim ve form içersinde

Veritabanı dosya adım :muhammed.accdb
Dosyanın Dizini: Projem>> bin >> debug >> muhammed.accdb

quote:

OleDbConnection bag = new OleDbConnection("Provider=Microsoft.Ace.OleDb.12.0;Data Source=muhammed.accdb");


Şeklinde kullanıyorum.Visual studio 2012 den Start Debug edınce uygulama sorunsuz calsıyıor.

Peki bu uygulamayı bır baska bılgısayarda açmayı denesem Data source yolunu değiştirmeme gerek var mı?

Bazı forumlarda şoyle bir yazım türü yapılmış
quote:

OleDbConnection bag = new OleDbConnection("Provider=Microsoft.Ace.OleDb.12.0;Data Source=|DataDirectory|\muhammed.accdb");

Bu gösterim ile benım yapıgım gosterımın farkı nedir?Programın farklı bilgisayarlardada veritabanıyla sorunsuz calısabılmesı ıcın hangısını kullanmalıyım ?


Teşekkür ederim ,

veri tabanı ile exe dosyanın aynı yerde olması veri tabanını görmesi için yererli yani yol belirtmene gerek yok. datadirectory metot ile kullanılıyor diye biliyorum.


Bu mesaja 1 cevap geldi.
K
12 yıl
Yüzbaşı

quote:

Orijinalden alıntı: alifuat_a

quote:

Orijinalden alıntı: Koyuncu332

Arkadaşlar bir konuda yardımınıza ihtiyacım var

Db lı bır uygulama hazırlıyorum.Veritabanı dosyamı Projem >> Bin >> Debug klasorunun içersine (.exe dosyasının yanına) yerleştirdim ve form içersinde

Veritabanı dosya adım :muhammed.accdb
Dosyanın Dizini: Projem>> bin >> debug >> muhammed.accdb

quote:

OleDbConnection bag = new OleDbConnection("Provider=Microsoft.Ace.OleDb.12.0;Data Source=muhammed.accdb");


Şeklinde kullanıyorum.Visual studio 2012 den Start Debug edınce uygulama sorunsuz calsıyıor.

Peki bu uygulamayı bır baska bılgısayarda açmayı denesem Data source yolunu değiştirmeme gerek var mı?

Bazı forumlarda şoyle bir yazım türü yapılmış
quote:

OleDbConnection bag = new OleDbConnection("Provider=Microsoft.Ace.OleDb.12.0;Data Source=|DataDirectory|\muhammed.accdb");

Bu gösterim ile benım yapıgım gosterımın farkı nedir?Programın farklı bilgisayarlardada veritabanıyla sorunsuz calısabılmesı ıcın hangısını kullanmalıyım ?


Teşekkür ederim ,

veri tabanı ile exe dosyanın aynı yerde olması veri tabanını görmesi için yererli yani yol belirtmene gerek yok. datadirectory metot ile kullanılıyor diye biliyorum.

Uygulamayı setup haline getirirken veritabnı dosyamı .exe dosyası ıle aynı dızıne koyacagım

OleDbConnection bag = new OleDbConnection("Provider=Microsoft.Ace.OleDb.12.0;Data Source="+Application.StartupPath+"\\muhammed.accdb";

Connectionstringimi de boyle yaptım.Herhangi bir sorun var mı arkadaşlar?


Bu mesaja 1 cevap geldi.
A
12 yıl
Yüzbaşı

OleDbConnection bag = new OleDbConnection("Provider=Microsoft.Ace.OleDb.12.0;Data Source=muhammed.accdb";
demen de yeterli olur


Bu mesaja 1 cevap geldi.