İnanılmaz Hata - İkinci Form Açarken

Delphi .net ve .net ile ilgili konuları buraya yazabilirsiniz.
Cevapla
Jire
Üye
Mesajlar: 167
Kayıt: 07 Eki 2007 01:20

İnanılmaz Hata - İkinci Form Açarken

Mesaj gönderen Jire »

  • Merhaba.
  • Bugün Delphi 2009 Architect'i yükledim.
  • Delphi .NET projesi açtım.
  • İkinci formu yarattım.
  • İkinci formun Name'ini HakkindaForm yaptım ancak hata verdi.
  • Sonra neden kaynaklanıyor diye araştırayım dedim ve buldum.
  • İkinci formun Name'ine "Hakki" ile başlayan her ne harf getirilirse getirilsin hep hata veriyor.
  • Mesela Name'i "hakk" yaptım hata vermedi ancak "hakki" yaptım ve hata verdi.
  • Projede hiç bir kod yok direk projeyi açıyorum 1. Forma buton ekliyorum.
  • düğmenin onclick'ine Hakki.show; diyorum ve tamam... Hata karşınıza çıkıyor.
  • Yakında video çekip koyacağım..
Hakki ile başlayan bütün 2. formlarda hata veriyor. 1. formda denemedim ama 2. formlarda böyle.

2. FORM BU İŞTE
Resim

HATA RESMİ:
Resim

unit1.pas

Kod: Tümünü seç

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, System.ComponentModel, Borland.Vcl.StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

uses Unit2;

{$R *.nfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
hakkindaform.Show;
end;

end.
deneme.dproj

Kod: Tümünü seç

program Project1;

uses
  System.Reflection,
  System.Runtime.CompilerServices,
  System.Runtime.InteropServices,
  SysUtils,
  Forms,
  Unit1 in 'Unit1.pas' {Form1},
  Unit2 in 'Unit2.pas' {hakkindaform};

{$R *.res}

{$REGION 'Program/Assembly Information'}
//
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
//

[assembly: AssemblyDescription('')]
[assembly: AssemblyConfiguration('')]
[assembly: AssemblyCompany('')]
[assembly: AssemblyProduct('')]
[assembly: AssemblyCopyright('')]
[assembly: AssemblyTrademark('')]
[assembly: AssemblyCulture('')]

// The Delphi compiler controls the AssemblyTitleAttribute via the ExeDescription.
// You can set this in the IDE via the Project Options.
// Manually setting the AssemblyTitle attribute below will override the IDE
// setting.
// [assembly: AssemblyTitle('')]


//
// Version information for an assembly consists of the following four values:
//
//      Major Version
//      Minor Version
//      Build Number
//      Revision
//
// You can specify all the values or you can default the Revision and Build Numbers
// by using the '*' as shown below:

[assembly: AssemblyVersion('1.0.*')]

//
// In order to sign your assembly you must specify a key to use. Refer to the
// Microsoft .NET Framework documentation for more information on assembly signing.
//
// Use the attributes below to control which key is used for signing.
//
// Notes:
//   (*) If no key is specified, the assembly is not signed.
//   (*) KeyName refers to a key that has been installed in the Crypto Service
//       Provider (CSP) on your machine. KeyFile refers to a file which contains
//       a key.
//   (*) If the KeyFile and the KeyName values are both specified, the
//       following processing occurs:
//       (1) If the KeyName can be found in the CSP, that key is used.
//       (2) If the KeyName does not exist and the KeyFile does exist, the key
//           in the KeyFile is installed into the CSP and used.
//   (*) In order to create a KeyFile, you can use the sn.exe (Strong Name) utility.
//       When specifying the KeyFile, the location of the KeyFile should be
//       relative to the project output directory which is
//       Project Directory\bin\<configuration>. For example, if your KeyFile is
//       located in the project directory, you would specify the AssemblyKeyFile
//       attribute as [assembly: AssemblyKeyFile('..\\..\\mykey.snk')]
//   (*) Delay Signing is an advanced option - see the Microsoft .NET Framework
//       documentation for more information on this.
//
[assembly: AssemblyDelaySign(false)]
[assembly: AssemblyKeyFile('')]
[assembly: AssemblyKeyName('')]


//
// Use the attributes below to control the COM visibility of your assembly. By
// default the entire assembly is visible to COM. Setting ComVisible to false
// is the recommended default for your assembly. To then expose a class and interface
// to COM set ComVisible to true on each one. It is also recommended to add a
// Guid attribute.
//

[assembly: ComVisible(False)]
//[assembly: Guid('')]
//[assembly: TypeLibVersion(1, 0)]
{$ENDREGION}

[STAThread]
begin
  Application.Initialize;
  Application.MainFormOnTaskbar := True;
  Application.CreateForm(TForm1, Form1);
  Application.CreateForm(Thakkindaform, hakkindaform);
  Application.Run;
end.
unit2.pas

Kod: Tümünü seç

unit Unit2;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs;

type
  Thakkindaform = class(TForm)
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  hakkindaform: Thakkindaform;

implementation

{$R *.nfm}

end.
Kullanıcı avatarı
aslangeri
Moderator
Mesajlar: 4322
Kayıt: 26 Ara 2003 04:19
Konum: Ankara
İletişim:

Re: İnanılmaz Hata - İkinci Form Açarken

Mesaj gönderen aslangeri »

s.a.
anladığım kadarı ile hata .net ile alakalı bir hata

Kod: Tümünü seç

targetinvocationexception
şeklinde google dan aratırsanız birşeyler bulabilirsiniz.
kolay gelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Jire
Üye
Mesajlar: 167
Kayıt: 07 Eki 2007 01:20

Re: İnanılmaz Hata - İkinci Form Açarken

Mesaj gönderen Jire »

aslangeri yazdı:s.a.
anladığım kadarı ile hata .net ile alakalı bir hata

Kod: Tümünü seç

targetinvocationexception
şeklinde google dan aratırsanız birşeyler bulabilirsiniz.
kolay gelsin.
Cevap için teşekkür ederim ancak Google'dan bakcaklarım problemimi çözceğini zannetmiyorum.
Çünkü hata sadece bir şeyi değiştirdiğim zaman oluyor, o da değiştirdiğim şey ise Name
Name'i 1. resimde siyah karalı yerde gösterdim.

Anlatmak istediğim şey şu:
Form'un Name'i (Caption değil)
>>Hakki ile başlayan şeyler yazdımmı hata alıyorum.
>>Hakki ile başlamayan şeyler yazdımmı hata almıyorum.

Form ismi (Name)
Name : Hakki* (Hakki ile başlayan her şey) = HATA
Name : * (Herhangi birşey "Hakki" içermeyen) = HATA YOK
Kullanıcı avatarı
Battosai
Üye
Mesajlar: 1316
Kayıt: 01 Eki 2007 12:02
Konum: Ankara

Re: İnanılmaz Hata - İkinci Form Açarken

Mesaj gönderen Battosai »

Hakki ile problemleri var heralde ne yaptısa Hakki :)
Kullanıcı avatarı
aslangeri
Moderator
Mesajlar: 4322
Kayıt: 26 Ara 2003 04:19
Konum: Ankara
İletişim:

Re: İnanılmaz Hata - İkinci Form Açarken

Mesaj gönderen aslangeri »

i harfinden kaynaklanan bişey de olabilir.
formadının uzunluğundan kaynaklanan bişeyde olabilir( ne alaka ama acaba diyorum)
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Kullanıcı avatarı
sadettinpolat
Moderator
Mesajlar: 2130
Kayıt: 07 Ara 2003 02:51
Konum: Ankara
İletişim:

Re: İnanılmaz Hata - İkinci Form Açarken

Mesaj gönderen sadettinpolat »

hocam senin delphi for .neti acman zaten buyuk bir hata :)
o urun gelistirilmiyor zaten. delphi ile .net yazmak istiyorsaniz delphi prism kullanmaniz lazim.
"Sevmek, ne zaman vazgececegini bilmektir." dedi, bana.

---
http://sadettinpolat.blogspot.com/
Jire
Üye
Mesajlar: 167
Kayıt: 07 Eki 2007 01:20

Re: İnanılmaz Hata - İkinci Form Açarken

Mesaj gönderen Jire »

İlk Delphi.NET projemi yapcaktım bu hataylada son buldu.
Benim Delphi.NET'i kullanma nedenim boyutunun sadece 20kb olmasından dolayı idi. Başka bir neden yok.
Çok az yer kaplıyor ayrıca bi Resource Editor ile içine baksan bile içinde Form bilgileri olmuyor.
sadettinpolat yazdı:hocam senin delphi for .neti acman zaten buyuk bir hata :)
o urun gelistirilmiyor zaten. delphi ile .net yazmak istiyorsaniz delphi prism kullanmaniz lazim.
tamam da bu embarcadero grubu niye bunu koymuş geliştirilmiyor ise
Kullanıcı avatarı
sadettinpolat
Moderator
Mesajlar: 2130
Kayıt: 07 Ara 2003 02:51
Konum: Ankara
İletişim:

Re: İnanılmaz Hata - İkinci Form Açarken

Mesaj gönderen sadettinpolat »

onceki surumlerini kullananlar varsa bir sure daha o kullanicilari magdur etmemek amaciyla konuldu sanirim. yoksa vcl.net in falan gelistirilmesi durduruldu. dogal olarakta delphi for .net in gelisitirlmesi durdururldu. onun yerine delphi prism geldi.
"Sevmek, ne zaman vazgececegini bilmektir." dedi, bana.

---
http://sadettinpolat.blogspot.com/
Ertugrul
Üye
Mesajlar: 136
Kayıt: 09 May 2009 12:05

Re: İnanılmaz Hata - İkinci Form Açarken

Mesaj gönderen Ertugrul »

Jire yazdı:Çok az yer kaplıyor ayrıca bi Resource Editor ile içine baksan bile içinde Form bilgileri olmuyor.
Ama 180$ lik program satin almazsan en basitinden reflector butun form+kaynak kodlari degisken isimlerine kadar aciga dokuyor :)
Jire
Üye
Mesajlar: 167
Kayıt: 07 Eki 2007 01:20

Re: İnanılmaz Hata - İkinci Form Açarken

Mesaj gönderen Jire »

Ertugrul yazdı:
Jire yazdı:Çok az yer kaplıyor ayrıca bi Resource Editor ile içine baksan bile içinde Form bilgileri olmuyor.
Ama 180$ lik program satin almazsan en basitinden reflector butun form+kaynak kodlari degisken isimlerine kadar aciga dokuyor :)
Benim yapacağım program sıradan bir oyun için ve kişisel öyle büyük bir durum söz konusu değil.
Ama resource editörlerden bahsetmemin nedeni önceden projemin onlarla çalınmış olmasıydı.
Demek istediğim adamlar sadece resource editor ile programdaki yazısı kendisi yapmış gibi gösterdi tabi doğal olarak sinirime gitti.
Themida gibi programlarla hem paketleyip hem şifrelemeyi denedim ancak öyle yaptığım zaman da bazı antivirüsler onu zararlı olarak görüyor ki millet bunu virüs zannediyor.

Konuya dönersek, o dediğinizi bilmiyordum ancak önceden yer imimde kayıtlı bir site var.
http://www.smartassembly.com/index.aspx
Bu sitedeki program da .net programlarını koruyormuş ama ne kadar bilemiyorum. Onla korusam, onu da "crack"lerlermi? :)
Ertugrul
Üye
Mesajlar: 136
Kayıt: 09 May 2009 12:05

Re: İnanılmaz Hata - İkinci Form Açarken

Mesaj gönderen Ertugrul »

Delphi resourcelarini sifreleyip resource hacker vb programlari ise yaramaz hale getiren bir yazilim var fakat ismini hatirlamiyorum suanda. Smartassembly icin ise.. programi incelemedim fakat sadece obfuscator gibi gozukuyor, obfuscator degisken isimlerini degistirerek okunmayi zorlastirma olayi fakat reflectorle kod yine anlasilir. Ayrica fiyati biraz pahali.. 500$
Cevapla