Thread overview
COM Programming
Jun 19, 2014
agora
Jun 19, 2014
agora
Jun 19, 2014
Mengu
Jun 20, 2014
agora
Jun 22, 2014
Mengu
Jun 23, 2014
agora
Jun 21, 2014
huseyin
Jun 21, 2014
agora
Jun 22, 2014
huseyin
June 19, 2014

Selam Şu (http://ddili.org/forum/thread/1382) konuda istediğimi aldım sonunda.

Şimdi bu kodları örnek olarak nasıl COM Programming standartlarına uygun hale getirebilirim?

Bu kodlari, C#'a eklemek istiyorum.

D ile rahatca halledebildigim seyi C# ile sacma sapan isim alanlarini ekleyerek hallediyoruz falan.

Sadece formu C#'a ait olan, geri kalan DLL'i falan D'ye ait olan bir program yapma hedefindeyim.

Ancak sanirim en onemli noktada cuvalladim :/

D'nin DLL'leri, .NET projelerine nasil eklenir ve kullanilir?

google'a dlang.org com programming, dllimport, d dll in c#, d code in c#, d code with c# gibi argumanlar yazdim ama bir nihai sonuca ulasamadim.

Fakat dlang forumunda bana com programmingden bahsedildi.

com programming'e baktim da windows'a bir nesne ekliyormus. Ben de kendi nesnemi ekleyerek projemde kullanma hedefindeyim.

Tabii her sey teoride oyle oncelikle com dll'leri farkli mi uretiliyor? normal dll elde edebiliyorum.

Ve nasil C# projeme, D kodunu dahil edecegim?

2 ayri konu oldu ama sanirim arama motorlarindan gelenler icin de uygun olacaktir diye dusundum.

Benim kodum:

import std.stdio;
import std.process;
import std.regex;

string extractSerial(string input) {
		auto m = input.match(`SerialNumber\s+(\S+)\s+`);
		if (m)
			return m.captures[1];
		else
			throw new Exception("Could not find serial number");
	}

void main()
{
	string a = "wmic bios get serialnumber";
	string b = "wmic os get serialnumber";


	auto result = executeShell(a);
	auto output = result.output;
	writeln(extractSerial(output));
	//system(a);
}

Bu kodu C# icinde kullanabilmem cok onemli geliyor bana. Belki de bir macera. Drag-Drop bir WinForm yontemi olsaydi C#'a bakmazdim bile. Ama hedefimi gerceklestirmek icin bir sekilde bunu o projeye dahil etmem sart.

Tesekkurler.

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

June 19, 2014

TkD ve DWT hakkinda benim de bir bilgim yok maalesef :/

DWT sanirim Eclipse'e plug-in olarak geliyor.

Java gelistirdigimden biliyorum GWT vardi bir isim benzerligi degilse eger.

C# evet sadece form icin.

TkD kullanimi kolay olsa yapabilirim belki ama benim mantigimi en cok zorlayan

pencere kurma islemleri falan.

C#'ta pencerenin yerini buyuklugunu istedigim component'in x,y koordinatini gorerek yapabiliyorum. Ama elle yazilan kodlarda bu rahatlik yok maalesef (Elle yazilan kodlar derken form'a bir component ekleyince C# bunun kodunu otomatik olusturuyor) D'de hepsini kurmak zorundayiz ve istedigim pencerenin, istedigim kismina, istedigim bileseni eklemek icin sanirim surekli bi deneme yanilma yapmam gerekiyor.

C# ile PInvoke nasil calisir hic bilmiyorum :/

Bir sekilde bunu projemde kullanmam gerekiyor. Bana kalsa ben hep konsol ekraninda calisirim ama son kullanici konsol ekranini pek sevmiyor :)

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

June 19, 2014

Ben COM programlamayı hiç bilmiyorum. Orada yanıtlayanlardan birisi öğrenecek bir sürü yeni kavram olduğunu söylemiş.

Gelen diğer öneriler şunlarmış:

  • C# C işlevlerini çağırabildiğine göre onun çağıracağı işlevlerini extern(C) olarak tanımla.

  • D ile bir DLL yaz ve C#'tan PInvoke ile çağır.

  • C# yalnızca form hazırlamak içinse onu boşven ve DWT'yi veya TkD'yi dene.

Benim bunların hiçbirisinde hiçbir deneyimim yok. :-/

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

June 19, 2014

Alıntı (agora):

>

TkD ve DWT hakkinda benim de bir bilgim yok maalesef :/

DWT sanirim Eclipse'e plug-in olarak geliyor.

Java gelistirdigimden biliyorum GWT vardi bir isim benzerligi degilse eger.

C# evet sadece form icin.

TkD kullanimi kolay olsa yapabilirim belki ama benim mantigimi en cok zorlayan

pencere kurma islemleri falan.

C#'ta pencerenin yerini buyuklugunu istedigim component'in x,y koordinatini gorerek yapabiliyorum. Ama elle yazilan kodlarda bu rahatlik yok maalesef (Elle yazilan kodlar derken form'a bir component ekleyince C# bunun kodunu otomatik olusturuyor) D'de hepsini kurmak zorundayiz ve istedigim pencerenin, istedigim kismina, istedigim bileseni eklemek icin sanirim surekli bi deneme yanilma yapmam gerekiyor.

C# ile PInvoke nasil calisir hic bilmiyorum :/

Bir sekilde bunu projemde kullanmam gerekiyor. Bana kalsa ben hep konsol ekraninda calisirim ama son kullanici konsol ekranini pek sevmiyor :)

dwt overkill de tkd cok kolay. deneyebilirsin.

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

June 20, 2014

@Mengu hocam bir ornek verseniz bana lazim olan yapi mesela tab control

bir de bir textbox gibi bir sey vardi

kendi liste gibi sol ve sag gibi bolumleri falan vardi iste bunlari yapmak kolay ise deneyebilirim TkD'yi :/)

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

June 21, 2014

Alıntı:

>

Bu kodu C# icinde kullanabilmem cok onemli geliyor bana. Belki de bir macera. Drag-Drop bir WinForm yontemi olsaydi C#'a bakmazdim bile.

Böyle bir yöntem var. Elbette Visual Studio kadar kaliteli olmasa da. DFL(D Forms Library) eğer windows üzerinde çalışıyorsan sana istemediğin kadar yardımcı olacaktır. Ben D'de 3 aydır görsel uygulama yazıyorum. Drag-Drop işini görmen için Entice Designer var. Var da var :D

**
Entice Designer**:http://www.dprogramming.com/entice.php
DFL(Benim bulduğum tek çalışan):https://github.com/Franklike/dfl

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

June 21, 2014

@huseyin tesekkur ederim

C++'ta

TextBox1->Text = "Hello World"

yapiyorduk. D'de bunu nasil ayarliyoruz onun icin sanirim bir dokuman vardir. Tabletteyim ama PC'ye yarin sinavdan sonra gecebilecegim ancak o zaman bakarim :)

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

June 22, 2014

Alıntı (agora):

>

TextBox1->Text = "Hello World"

yapiyorduk. D'de bunu nasil ayarliyoruz onun icin sanirim bir dokuman vardir. Tabletteyim ama PC'ye yarin sinavdan sonra gecebilecegim ancak o zaman bakarim :)

Kastettiğin şey referans türünde birşey ise
http://www.dprogramming.com/dfl.php bu adresten tutorial ve gerekli açıklamalar var.
http://wiki.dprogramming.com/DflDoc/HomePage Bu adrestede ne kadar yeni bilmesem de referanslar var.
Ama hemen hemen hepsi çalışıyor :)

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

June 23, 2014

Alıntı (agora:1403268065):

>

@Mengu hocam bir ornek verseniz bana lazim olan yapi mesela tab control

bir de bir textbox gibi bir sey vardi

kendi liste gibi sol ve sag gibi bolumleri falan vardi iste bunlari yapmak kolay ise deneyebilirim TkD'yi :/)

oyle hazira konmak yok; https://github.com/nomad-software/tkd/tree/master/docs. :)

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

June 23, 2014

@huseyin tesekkur ederim ilk denememi yaptim ben dmd ile uyumlu sanirim bende yeni versiyon dmd'de calisiyor.

@Mengu hocam yapicam ama nasil desem insanlar gui istemeseler ne guzel olurdu :D

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]